VisualWeb ICEFacesの基礎の基礎
ICEFacesをネタにするといいつつなにもコード載せてなかったのでまずは基礎中の基礎から。
足し算をするアプリを書いてみよう。環境設定が容易なNetBeans 6.5で。
まずWebプロジェクトを作る。その際のフレームワークの選択でVisual Web ICEFacesを選択しておくこと。理由はJSP直書きで画面を生成するのが面倒なため。JSFのJSPを理解している人ならなくてもいい。その場合ICEFacesを選択すること。
これだけで必要なランタイムや開発環境が組み込まれる。
JSPの作成
画面にデフォルトで配置されたコンポーネントを削除し、入力フィールド2つと出力フィールド1つ、計算実行用のボタンを配置する。
入力用はInputTextコンポーネント、出力用はoutputText、ボタンはコマンドボタンにしてある。また、今回は「+」を表示するためにoutputTextをもうひとつ用意しておく。「+」とボタンにはあらかじめ表示する文字のプロパティであるvalueプロパティにそれぞれ「+」と「=」をセットしておく。
プロパティの作成
続いて管理Beanに入力と出力のプロパティを用意する。結果は表示のみなのでゲッターのみ。
int param1; int param2; int result; public int getParam1() { return param1; } public void setParam1(int param1) { this.param1 = param1; } public int getParam2() { return param2; } public void setParam2(int param2) { this.param2 = param2; } public int getResult() { return result; }
それぞれvalueプロパティにバインドする。プロパティウインドウのボタンをクリックして選択するのが楽。
続いて、アクションイベントの作成。右クリックメニューで作成する。
アクションイベントのコードは以下のとおり1行追加しただけ。
public String button1_action() { result = param1 + param2; return null; }
実行してみよう。
簡単だね。作成方法はJSFとまったく同じなのがわかると思う。
ちなみにこれはICEFacesの特徴でもあるのだが、CometとAJAXがフルに使われるので、このアプリは画面遷移していない。あくまでも対象となるコンポーネントのみがAJAXによってアップデートされるのだ。おかげで体感速度的にも画面遷移を伴うWEBアプリよりかなりよろしい。