TOPシステム開発> マネージドBeanの定義
まるごとサーバサイドJava
JDeveloperで学ぶJSF入門

第10回:モデルとビューを統合する

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

監修:山田祥寛   2006/8/24
前のページ  1  2  3
マネージドBeanの定義

   これまでの手順で作成されたマネージドBeanの定義をリスト2に示します。XML定義では、マネージドBeanは、<managed-bean>要素の中に次に挙げる要素を入れ子にして記述することで定義します。
リスト2:faces-config.xmlに定義されたマネージドBean

(画像をクリックすると別ウィンドウに拡大図を表示します)


<managed-bean-name>要素

   マネージドBeanの名前を指定します。この名前と同じJSFページ変数が定義され、マネージドBeanのインスタンスへの参照が格納されます。


<managed-bean-class>要素

   マネージドBeanの型を指定します。マネージドBeanは必ず具象クラスで、デフォルトコンストラクタ(引数を取らないコンストラクタ)を持っている必要があります。


<managed-bean-scope>要素

   マネージドBeanの生成されたインスタンスが有効な期間(スコープ)を指定します。「request」(リクエストスコープ)、「session」(セッションスコープ)、「application」(アプリケーションスコープ)のいずれかを指定できるようになっています。それぞれのスコープの長さについては図8を参照してください。

各スコープの違い
図8:各スコープの違い

   <managed-beanclass>要素にBeanクラスが指定されている場合は、<managed-property>要素の下に以下の要素を指定することでマネージドプロパティを定義できるようになっています。Beanがインスタンス化されるタイミングで自動的にプロパティの値を設定することができるようになります。


<property-name>要素

   プロパティ名を指定します。この要素は必須で、必ず先頭になければなりません。


<property-class>要素

   プロパティの型を指定します。


<value>要素/<null-value>要素

   プロパティに設定する値を指定します。ここに記載された文字列は、表4に基づいて、プロパティ型に変換後、セットされます。null値を与えたい場合は<value>の代わりに<null-value>を指定します。

変換ルール
Boolean Boolean.valueOf(<<文字列>>)
Byte Byte.valueOf(<<文字列>>)
Character <<文字列>>.charAt(0)
Short Short.valueOf(<<文字列>>
Integer Integer.valueOf(<<文字列>>)
Long Long.valueOf(<<文字列>>)
Float Float.valueOf(<<文字列>>)
Double Double.valueOf(<<文字列>>)
String 変換なし
値バインディング式が指定された場合 変換なし

表4:<value>要素の型変換ルール

前のページ  1  2  3


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

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


INDEX
第10回:モデルとビューを統合する
  モデルとビューの統合
  マネージドBeanとマネージドプロパティの設定
マネージドBeanの定義