VisualWeb ICEFacesの基礎の基礎

ICEFacesをネタにするといいつつなにもコード載せてなかったのでまずは基礎中の基礎から。


足し算をするアプリを書いてみよう。環境設定が容易なNetBeans 6.5で。


まずWebプロジェクトを作る。その際のフレームワークの選択でVisual Web ICEFacesを選択しておくこと。理由はJSP直書きで画面を生成するのが面倒なため。JSFJSPを理解している人ならなくてもいい。その場合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アプリよりかなりよろしい。