TOPシステム開発> バリデータ動作のテスト
まるごとサーバサイドJava
JDeveloperで学ぶJSF入門

第8回:バリデータの設定とメッセージの日本語化

著者:WINGSプロジェクト  佐藤治夫(株式会社ビープラウド)、
小泉守義

監修:山田祥寛   2006/8/17
前のページ  1  2   3  次のページ
バリデータ動作のテスト

   「ページ遷移のテスト」で行った手順を繰り返し、埋め込みOC4Jサーバを再起動します。ブラウザからさまざまな値を入力してバリデータの動きを確認しましょう。まず、未入力の状態で「占う」ボタンをクリックします。ページは遷移せず、各メッセージボックスの下に「Validation Error: Value is required」(値の入力が必要)と表示されるはずです(図2)。
未入力時のエラー
図2:未入力時のエラー

   次に、日付入力欄に負の値を入れて「占う」ボタンをクリックします。すると、「Validation Error: Value is less than allowable minimum of 0」(値が許容できる下限の0より小さい)や「Validation Error:Specified attribute is not betweenthe expected values of 1 and 12」(指定された属性は、期待される1から12の値の範囲にない)と表示されることが確認できると思います(図3)。

許容範囲外のエラー
図3:許容範囲外のエラー


メッセージの日本語化

   JSFではロケールに応じたメッセージバンドルを用意することで、メッセージの国際化が可能です。JDeveloper 10gによる日本語メッセージを用意する方法は、次の「JDeveloperのバリデータメッセージの日本語化」の項を参照してください。

   JSFは、クライアント(Webブラウザ)から送信されたロケール情報やJSF設定ファイル(faces-config.xml)に設定されているロケール情報を基にして、メッセージを取得するメッセージバンドルを決定します。faces-config.xmlに記述すべきロケールの設定をリスト1に示しました。この例ではデフォルトのロケールを「ja」(日本語)に設定し、サポートするロケールとして「en」(英語)を設定しています。

リスト1:ロケールの設定(faces-config.xml)
<application>
   <locale-config>
      <default-locale>ja</default-locale>
      <supported-locale>en</supported-locale>
   </locale-config>
</application>

   コンバージョンエラーのメッセージに対応する、英語のメッセージバンドルと日本語のメッセージバンドルの抜粋をリスト2に示しました。クライアントからJSFに対して「ja」ロケールを選択するよう指示があった場合に、日本語のメッセージが表示されます。

リスト2:メッセージバンドルの国際化
(ApplicationMessages.properties:英語のメッセージ)
javax.faces.component.UIInput.CONVERSION=Conversion error occurred.

(ApplicationMessages_ja.properties:日本語のメッセージ)
javax.faces.component.UIInput.CONVERSION=変換エラーが発生しました

前のページ  1  2   3  次のページ


著者:WINGSプロジェクト 佐藤治夫(株式会社ビープラウド)、小泉守義 監修:山田祥寛
著者プロフィール
著者:WINGSプロジェクト 佐藤治夫(株式会社ビープラウド)、
小泉守義
監修:山田祥寛

WINGSプロジェクトは、有限会社WINGSプロジェクト(代表取締役山田祥寛)が運営するライティング・チーム。海外記事の翻訳から、主にサーバサイド分野の書籍/雑誌/Web記事の執筆、講演、アプリケーション開発などを幅広く手がける。2006年7月時点での登録メンバーは20名で、現在も一緒に執筆をできる有志を募集中。執筆に興味のある方は、どしどし応募いただきたい。


INDEX
第8回:バリデータの設定とメッセージの日本語化
  バリデータの設定
バリデータ動作のテスト
  JDeveloperのバリデータメッセージの日本語化