Oracle ADFデータ・フォームBeanについて

すべてのOracle ADF Strutsフォームで、データ・フォームBeanが使用されます。データ・フォームBeanは、次のクラスのインスタンスです。

oracle.adf.controller.v2.struts.forms.BindingContainerActionForm    

このクラスは、次のクラスのサブクラスです。

org.apache.struts.action.ActionForm     

次のインタフェースを実装します。

org.apache.commons.beanutils.DynaBean    

データ・フォームBeanによって、バインディング・コンテナの属性がフォームで動的に使用可能になるため、アプリケーションで必要なActionForm Beanを作成する手間を省くことができます。

データ・バインディングをデータ・コントロール・パレットからJSPページにドラッグ・アンド・ドロップすると、Oracle ADFデータ・フォームBeanが自動的に参照されます。関連するバインディング・コンテナ内の各値バインディングに対して、getメソッドおよびsetメソッドが動的に作成されます。

データ・フォームBeanが作成されると、struts-config.xmlファイルに次のような変更が加えられます。

JDeveloperでは、データ・フォームBeanを使用する際、struts-config.xmlファイルに<form-property>要素は移入されません。アプリケーションによって、関連するバインディング・コンテナから必要な値が取得されます。

実行時に、データ・アクションまたはデータ・ページのどちらの関連アクション・クラスも、データ・フォームBeanを使用してフォームにデータを移入し、(変更がある場合は)更新を送信します。

次に、データ・フォームBeanの動作を説明するために使用できるhtml:formのコード・スニペットを示します。

<html:form action="MyDataAction.do">
  <html:text property="dname"> 
</html:form>     

実行時に、MyDataActionクラスでは、"dname"プロパティを解決する必要があります。Oracle ADFでは、HTMLフォームは関連するアクションと連動します。関連するアクションは、データ・フォームBeanと連動します。フォームはデータ・フォームBeanに移動してプロパティを解決します。次に、データ・フォームBeanは、その名前のバインディングがあるかどうかをバインディング・コンテナに問い合せます。バインディング・コンテナは、そのようなバインディングがある場合は戻し、データ・フォームはそのバインディングの値をHTMLフォームに移入します。

警告: struts-config.xmlファイルのDataFormクラスやDataFormのエントリの変更、名前変更または削除はしないでください。アプリケーション全体が正常に動作するためには、このBean名は決して変更しないでください。DataFormは、Oracle ADFで予約されているFormBean名です。

アプリケーションのテクノロジ・スコープ内にあるクラスのソース・コードまたはJavadocを表示できます。

テクノロジ・スコープ内にあるクラスのコードまたはJavadocを参照するには、次のようにします。

  1. 「ナビゲート」メニューから「Javaクラスに移動」を選択します。
  2. ダイアログの「名前」フィールドにクラス名を入力するか、または「参照」をクリックしてクラスを参照します。
  3. 「ソース」または「Javadoc」を選択し、「OK」をクリックします。

データ・フォームBeanで使用されるクラスおよびインタフェースのJavadocは、次のリファレンスを参照してください。

oracle.adf.controller.v2.struts.forms.BindingContainerActionForm

http://jakarta.apache.org/commons/beanutils/api/org/apache/commons/beanutils/DynaBean.html

http://struts.apache.org/api/org/apache/struts/action/ActionForm.html