はじめに
本稿では、CDIの機能を利用したサンプルアプリケーションを通して、CDIの便利な機能について紹介します。
対象読者
- Java EE 6開発に興味がある方
必要な環境
動作環境は以下の通りです。
- Java SE 6
- NetBeans 7.1.2
CDIを利用した数字合わせアプリケーション
この記事では、入力フォームを使ったサンプルWebアプリケーションを利用して、動作とコードを見ながら利用方法を追っていきます。
今回作成するのは、JSPの動作サンプルなどでも取り上げられる番号合わせのアプリケーションで、0から100までランダムで決められた数値を一定回数内に当てる簡単なものです。その機能は次のようになります。
- 初回は正解となる値を乱数を利用し、0から100の間から決める
- ブラウザからリクエストされた数値と正解の値を比較し、正解か不正解かを判定
- 不正解だった場合は、回答できる残りの回数を引く
- 残り回答できる回数が0になった場合は正解を表示し、初期化する
- 正解だった場合は初期化する
- 正解、不正解の結果をメッセージで返す
このアプリケーションをGlassfishで動作させ、ブラウザで動作を確認します。アドレスにhttp://localhost:8080/NumberGuess/faces/index.xhtmlを入力して実行すると、次の初期画面になります。
まずは、0~100の間から選びます。残り回答回数は、10回与えられています。例えば、1つ数値を入力して送信してみた結果は次の画面です。
違うとメッセージが表示され、正解のヒントとなる数値の範囲が表示され、残り回数が表示されます。この範囲以外の数値を入れた場合、値の範囲チェックが実行されます。残り回答回数は減りません。
10回以内に答えが見つかった場合は次のようにメッセージが表示され、ゲームが初期化されます。