Shale Remotingを使ったファイルアップロードの方法

java.sun.comから,こんな記事が掲載されている。 「Accessing Resources From JavaServer Faces Custom Components」 – java.sun.com JSFのカスタムコンポーネントで,Ajaxによるファイルアップロード系の処理をするためにShale RemotingやDojoを使った例である。全体のコードが掲載されておらず,ポイントしかわからないかもしれない。もし全コードを見渡したい人は,「Java PetStore 2… more

JSFアプリケーションの単体テスト with Shale Test Framework

JSFの実行時の環境をシミュレートした状態で単体テストを可能にしてくれるShale Test Frameworkについて,全4回のエントリで紹介した。 「JSFアプリケーションの単体テスト with Shale Test Framework (1)」  [全般] Shale Test Frameworkの紹介。 「JSFアプリケーションの単体テスト with Shale Test Framework (2)」  [全般] 題材の紹介とEclipseプロジェクトの準備。 「JSFアプリケーションの… more

JSFアプリケーションの単体テスト with Shale Test Framework (4)

Shale Test Framework(STF)を紹介しているエントリも,早くも3回目になってしまった。前回のエントリでは,テストメソッドの説明の途中で強引に終わらせてしまった。今回はその続きを見ていこう。 まず,テストメソッドのソースコードを再び示しておこう。前回のエントリでは,テスト対象のgetRightSelectItems()メソッドを呼び出すところまで解説した。 public void testGetRightSelectItemsValue1() throws Exception … more

JSFアプリケーションの単体テスト with Shale Test Framework (3)

前回のエントリでは,Shale Test Framework(STF)を試すための題材を紹介した。さらに,STFを試すためのtest-stfプロジェクトも提供を行った。入手していない方は,是非ここからダウンロードして欲しい。test-stfプロジェクトには,「JSF+AjaxでUIコンポーネント開発 with Shale Remoting」で取り上げたdouble-selectコンポーネントに選択肢を提供するManagedBean,SelectItemsProducerクラスを含めた。Selec… more

JSFアプリケーションの単体テスト with Shale Test Framework (2)

前回のエントリで予告した通り,今回はShale Test Framework(以下STFと略す)を試すための題材を紹介することにしよう。 STFの対象問題領域は,JSF APIやServlet APIに依存したコードを持つManagedBeanクラスが主な領域となる。「JSF+AjaxでUIコンポーネント開発 with Shale Remoting」の一連のエントリの中で,double-selectコンポーネントの選択肢をJSON形式のテキストで返却するManagedBean,SelectIte… more

JSFアプリケーションの単体テスト with Shale Test Framework (1)

JSFの機能を補完することで,より生産性の高さを求めることができるApache Shale。もちろんJSFのテストの領域にも足を踏み入れている。今回から数回,JSFの単体テストを楽にしてくれる「Shale Test Framework」について紹介してみようと思う。 JSFの大きな特徴として「ManagedBeanをPOJOで作ることができる」ということが真っ先にあげられる。Strutsやその他の普及したWebアプリケーションフレームワークでは,フレームワークが提供するinterfaceや抽象ク… more

JSF+AjaxでUIコンポーネント開発 with Shale Remoting

Ajax対応JSFコンポーネントをApache Shale Remotingを使って作成する方法を,全15回に渡ってエントリした。 「JSF+AjaxでUIコンポーネント開発 with Shale Remoting (1)」  [全般] やってみようと思った理由と,Shale Remotingの紹介。 「JSF+AjaxでUIコンポーネント開発 with Shale Remoting (2)」  [全般] 作成するコンポーネント(double-selectコンポーネント)の紹介。 「JSF+Aj… more

JSF+AjaxでUIコンポーネント開発 with Shale Remoting (15)

Shale Remotingを使ったJSFコンポーネントの作成について長らくエントリしてきたが,今回でtest-dsプロジェクトも完成し,実行ができるようになる。残りの3つ(前回のエントリで2つと紹介したが1つ忘れてた)をサクッとやっつけることにしよう。 まずは,double-selectコンポーネントが使用する2つのManagedBeanを,faces-config.xmlファイルに定義する。 <?xml version=”1.0″ encoding=”… more

JSF+AjaxでUIコンポーネント開発 with Shale Remoting (14)

double-selectコンポーネントの動作確認を行うためのtest-dsプロジェクト作りも2回目となった。前回のエントリでは,double-selectコンポーネントをページに配置するためのJSPファイルを作成し,double-selectタグの属性値としていくつかManagedBeanとの連携を記述した。今回は,連携するManagedBeanのクラスを紹介しよう。 まずは簡単な方から。double-selectコンポーネントの選択値を得るためのManagedBeanを,ParameterB… more

JSF+AjaxでUIコンポーネント開発 with Shale Remoting (13)

Shale Remotingを使ったAjax対応JSFコンポーネントの作成も,今回で13回目を迎えた。かなり気合いが入ったエントリが続いているが,前回までの1〜12回で,double-selectコンポーネントができ上がった。今回からは,double-selectコンポーネントを利用するためのtest-dsプロジェクトを解説していこうと思う。 まずは,test-dsプロジェクトをどんなアプリケーションにするかだが,単純に1つのページにdouble-selectコンポーネントを配置して,左右のコン… more

JSF+AjaxでUIコンポーネント開発 with Shale Remoting (12)

今回はdouble-selectコンポーネントの残り一つのファイルである,faces-config.xmlファイルを紹介する。このファイルをもって,double-selectコンポーネントは完成となる。加えて,maven2でのパッケージング&ローカルリポジトリへのインストールまで行うことにしよう。残念ながら,今回もAjaxやShale Remotingは関係しない。 まず,カスタムタグ,UIコンポーネント,そしてレンダラがどのように関連しているかを示そう。 図を見て分かる通り,クラス(黒文字)が… more

JSF+AjaxでUIコンポーネント開発 with Shale Remoting (11)

今回は,JSFコンポーネント,特に値の入力が可能なコンポーネントを作る際の基礎知識と,実装方法について紹介していこうと思う。Shale Remotingを使用したAjax対応コンポーネントの開発がメインテーマだが,今回はAjaxもShaleも関係なく,JSFのみの話になる。実は,前回のエントリでdouble-selectコンポーネントのAjax関連の話は終わってしまっているんだけど,入力可能なJSFコンポーネントの作成方法はネットでも詳しい説明はなかったりするので,是非お付き合い頂きたい。 JS… more

JSF+AjaxでUIコンポーネント開発 with Shale Remoting (10)

前回までの説明で,double-selectコンポーネントのサーバでのレンダリング処理が行われるようになった。DoubleSelectRendererクラスのencodeBegin()メソッドによって,左右2つのselectタグがレンダリングされる。しかし,レンダリングされる内容の中で,いくつかJavaScript関数が登場したが,どれもdouble-select.jsファイルに記述されるとしか説明しなかった。今回は,Webブラウザ上で実行されるJavaScript関数を記述したdouble-s… more

JSF+AjaxでUIコンポーネント開発 with Shale Remoting (9)

前回はdouble-selectコンポーネントのレンダリング結果を説明して終わってしまった。今回という今回は,レンダラクラスの説明を行おうと思う。前回紹介したレンダリング結果と対応させながら以降の説明を見ていって欲しい。 JSFコンポーネントをレンダリングする機能を持つクラスは,Rendererクラスを継承して作成する。double-selectコンポーネントでは,DoubleSelectRendererというクラス名とした。 public class DoubleSelectRenderer … more

JSF+AjaxでUIコンポーネント開発 with Shale Remoting (8)

今回は,double-selectコンポーネントをレンダリングするDoubleSelectRendererクラスの解説を行おうと思う。その中で,Shale RemotingのAPIを使用してみる。 前回紹介したDoubleSelectTagクラスのsetProperties()メソッドによって,JSPに記述されたカスタムタグの属性値がUIコンポーネントにセットされる。DoubleSelectTagクラスが継承するUIComponentTagクラスは,setProperties()メソッドの呼び出… more

JSF+AjaxでUIコンポーネント開発 with Shale Remoting (7)

JSF+Ajax with Shale Remotingと題したエントリだが,やっとJavaコードの紹介を始めるときが来た。今回は,double-selectコンポーネントを構成する2つのクラスの一つ目,カスタムタグハンドラクラスについて解説しようと思う。 JSP実装のJSFコンポーネントを作成する際,それはカスタムタグの形態となるために,タグハンドラクラスを作成する必要がある。JSFでは,以下のどちらかのクラスを継承して作成する。 UIComponentTag – 本体部を持たない… more

JSF+AjaxでUIコンポーネント開発 with Shale Remoting (6)

「JSF+AjaxでUIコンポーネント開発 with Shale Remoting (4)」で予告した内容を今回紹介しようと思ったが,あまり概論ばかりでも退屈なので,実際のコードを今回から解説していこうと思う。その中で処理の流れを見ていけばいいかな,と。 JSFコンポーネントのJSP実装はカスタムタグの形態をとるため,まずはタグライブラリディスクリプタ,つまりtaglib.tldファイルから取り上げよう。taglib.tldファイルはJSFだからといって特別なことは何もない。JSPのカスタムタグ… more

JSF+AjaxでUIコンポーネント開発 with Shale Remoting (5)

「JSF+AjaxでUIコンポーネント開発 with Shale Remoting (4)」で予告した内容を今回は置いておいて,大事なことを書くのを忘れていたので,今回はそれを先に取り上げる。 double-selectコンポーネントのJAR内の構成など,突然実装寄りな話に前回は終始してしまったが,肝心のdouble-selectコンポーネントを利用する際のカスタムタグの記述がどういうものになるかを示していなかったことに気がついた。まずは下のリストを見て欲しい。 <my:double-se… more

JSF+AjaxでUIコンポーネント開発 with Shale Remoting (4)

「JSF+AjaxでUIコンポーネント開発 with Shale Remoting (3)」で予告した通り,今回はdouble-selectコンポーネントの構成について紹介する。それを通じて,Shale Remotingが便利だと思う根本理由を説明したいと思う。 JSFは,コンポーネント指向であることは何度も本ブログで述べていることだが,ではJSFコンポーネントの実体がどういったものなのかは,あまり一般的には説明されていない。 再配布可能なJSFコンポーネントは,クラスファイルと定義ファイル,そ… more

JSF+AjaxでUIコンポーネント開発 with Shale Remoting (3)

「JSF+AjaxでUIコンポーネント開発 with Shale Remoting (2)」で予告した通り,カスタムコンポーネントを開発するための開発環境の構築について紹介する。NetBeansを使えば簡単にJSFを使った開発をすることができるが,Maven2との連携がとれないことや,やっぱりEclipseは多数派だろうと思うので,ここではEclipseを使うことにした。 今回は「JSFカスタムコンポーネントを開発するプロジェクト」と「作ったカスタムコンポーネントを利用するプロジェクト」の2つを… more

Get Adobe Flash playerPlugin by wpburn.com wordpress themes