Managed Bean の設定

関連項目  

アプリケーションの開発で EnterpriseItem BeanEnterpriseItems Bean、または Identity Bean の Managed Bean を使用するには、その Bean がアプリケーションの設定リソース ファイルで宣言されている必要があります。これらの宣言によって、その Bean の新しいインスタンスが必要になったときに、JavaServer Faces の実装によって自動的に作成されることが保障されます。Bean のリソースとデフォルト プロパティの設定も、このファイルに定義されている必要があります。デフォルトでは、このファイルは faces-config.xml と呼ばれます。

メモ    faces-config.xml ファイルは、Web アプリケーションのナビゲーション フローを定義するナビゲーション ルールを設定するときにも使用されます。詳細については、ナビゲーション ルールの定義を参照してください。

例えば、ここに、Managed Bean 宣言のテンプレートがあります。

<managed-bean>

<description>Description of the managed bean.</description>

<managed-bean-name>Name of the managed bean.</managed-bean-name>

<managed-bean-class>Fully qualified class name.</managed-bean-class>

<managed-bean-scope>Scope of the bean.</managed-bean-scope>

<managed-bean-property>

<property-name>Name of the bean property.</property-name>

<value>Default value of the property.</value>

</managed-bean-property>

</managed-bean>

Managed Bean の基本的な詳細が、<description>、<managed-bean-name>、および <managed-bean-class> というタグによって指定されます。<managed-bean-name> タグには、JSF コンポーネント属性で Bean を参照するために使用される名前があります。例えば、ItemsGrid コンポーネントと ItemsColumn コンポーネント の開始タグを考えてみます。

<boe:itemsGrid id="myItemsGrid" enterpriseItems="#{enterpriseItems}">

ItemsGrid コンポーネントがこの方法で EnterpriseItems Bean を参照するようにするには、enterpriseItems 属性を使用し、Managed Bean 宣言が faces-config.xml ファイルに存在する必要があります。

<managed-bean-name>enterpriseItems</managed-bean-name>

<managed-Bean-class> タグには、次のように、Bean クラスの完全修飾名が含まれる必要があります。

<managed-bean-class>

com.businessobjects.jsf.appcontrols.model.EnterpriseItems

</managed-bean-class>

<managed-bean-scope> タグは、その Bean の格納場所と、使用可能になる条件を定義します。EnterpriseItem BeanEnterpriseItems Bean、または Identity Bean の Beans には、セッション スコープを使用します。

<managed-bean-scope>session</managed-bean-scope>

最後に、0 個以上の <managed-bean-property> タグを使用して、Bean のプロパティのデフォルト値を定義します。それらは、<property-name> サブタグと <value> サブタグで指定します。多くのプロパティは、文字列や整数などの基本データ型です。しかし、基本データ型でない Bean プロパティの場合は、そのタイプとして使用されるプロパティ クラスの完全修飾名を指定する必要があります。以下はその例です。

<managed-bean-property>

<property-name>nextRangeButton</property-name>

<property-value>com.businessobjects.jsf.sdk.properties.SubmitButtonProps</property-class>

<value>#{myButtonProps}</property-value>

</managed-bean-property>

#{myButtonProps} ステートメントは SubmitButtonProps Bean を参照しています。プロパティの Bean に関する詳細は、プロパティ クラスを Crystal Enterprise の JavaServer Faces コンポーネント と連係させてどのように使用できますか。を参照してください。

JavaServer Faces 実装は、アプリケーションの開始時に faces-config.xml ファイルを処理します。ページからある Bean が初めて参照されると、JavaServer Faces 実装はそれを初期化して、その Bean のインスタンスが存在しない場合は定義済みのスコープに格納します。それによって、その Bean はアプリケーションのすべてのページで使用可能になります。


Business Objects
http://japan.businessobjects.com/
サポート サービス
http://japan.businessobjects.com/services/