詳細アイコン IDE内の表示

ADF Swingフォームでマスター・フォームを作成する手順を完了すると、Javaビジュアル・エディタのフォームは次のように表示されます。

Javaビジュアル・エディタ

アプリケーション・ナビゲータでは、「ビュー」プロジェクトを完全に展開すると次のようになります。

アプリケーション・ナビゲータ

「DataBindings.cpx」「FormPageDef.xml」および「PanelOrdersView1HelperPageDef.xml」をダブルクリックして、各ファイルを概要エディタで開きます。必要な場合は、エディタ・ウィンドウの「概要」をクリックして、概要エディタにファイルを表示します。

パネル・ページの定義ファイル

「PanelOrdersView1HelperPageDef.xml」ファイルは、「Orders」編集フォーム・パネルのページ定義ファイルです。このファイルでは、フォームやパネルに追加されたUIコンポーネントと、Modelプロジェクトのビジネス・サービス・コンポーネント間の相互作用が定義されます。ページ定義ファイルでは、アプリケーションのビュー・レイヤー内の各フォームまたはパネル(ページ)のADFバインディング・コンテナが定義されます。バインディング・コンテナによって、ページに対するすべてのADFバインディング・オブジェクトへの実行時アクセスが提供されます。

データ・コレクションデータ・オブジェクト・アイコン OrdersView1」を「データ・コントロール」パネルからドラッグし、メイン・フォームにドロップしてマスター編集フォームを作成したときに、JDeveloperでは、イテレータ・バインディングイテレータ・アイコン OrdersView1Iterator」が編集フォーム・パネルに追加されています。イテレータ・バインディングでは、データ・コレクションのイテレータが参照され、そのデータ・オブジェクトの反復操作が容易になります。また、コレクション内のデータ・オブジェクトの現在位置と状態も管理されます。イテレータ・バインディングでは、データへのアクセスは実際には行われません。かわりに、データにアクセス可能なオブジェクトが公開され、コレクション内の現行データ・オブジェクトが指定されます。

「データ・コントロール」パネルを使用してUIコントロールをユーザー・インタフェースに追加するたびに、データバインドされたそのコントロールに対するADFバインディング・オブジェクトがページ定義ファイルに作成されます(例: 定義バインディング・アイコン OrderId」および定義バインディング・アイコン OrderDate」)。マスター・フォームには、マスター・コレクション内の単一のデータ・オブジェクトが表示されるため、パネルには、属性レベルのバインディング定義が設定された属性固有のUIコンポーネントが含まれている必要があります。これらの属性は、バインドされたコレクションに対するデータ・オブジェクトの現在位置を管理するADFイテレータ・バインディング・オブジェクトによって、ADFデータ・コントロールにバインドされます。実行時に、属性バインディング・オブジェクトは、現在のオブジェクトのデータを戻すために、またはオブジェクトのデータでアクションを実行するために、イテレータ・バインディングを参照します。属性レベルのバインディングのXMLソース・コードを参照するには、「ソース」をクリックして、「PanelOrdersView1HelperPageDef.xml」<bindings>要素を表示します。

<bindings>
  <attributeValues IterBinding="OrdersView1Iterator" id="OrderId"
                   xmlns="http://xmlns.oracle.com/adfm/jcuimodel">
    <AttrNames xmlns="http://xmlns.oracle.com/adfm/uimodel">
      <Item Value="OrderId"/>
    </AttrNames>
  </attributeValues>
  <attributeValues IterBinding="OrdersView1Iterator" id="OrderDate"
                   xmlns="http://xmlns.oracle.com/adfm/jcuimodel">
    <AttrNames xmlns="http://xmlns.oracle.com/adfm/uimodel">
      <Item Value="OrderDate"/>
    </AttrNames>
  </attributeValues>
  ...
</bindings>

フォーム・ページの定義ファイル

「FormPageDef.xml」ファイルは、メイン・フォームのページ定義ファイル(ADFバインディング・コンテナ)です。データ・コレクションデータ・オブジェクト・アイコン OrdersView1」を「データ・コントロール」パネルからドラッグし、メイン・フォームにドロップしてマスター編集フォームを作成したときに、JDeveloperでは、ページ実行可能ファイルバインディング・コンテキスト・アイコン view_PanelOrdersView1HelperPageDef」もメイン・フォームに追加されています。アプリケーションが実行されると、メイン・フォームのバインディング・コンテナがインスタンス化されます。メイン・フォームに追加されたパネル内のオブジェクトにアクセスするために、メイン・バインディング・コンテナによって、ページ実行可能ファイルで表されているバインディング・コンテナがインスタンス化されます。

DataBindings.cpxファイル

「DataBindings.cpx」ファイルでは、アプリケーション全体のADFバインディング・コンテキストが定義され、メタデータが提供されます。実行時には、このメタデータからADFバインディング・オブジェクトが作成されます。バインディング・コンテキストは、使用可能なデータ・コントロールとデータ・バインディング・オブジェクトのリストが保持されるコンテナ・オブジェクトです。これにより、個々のページがページ定義ファイル内のバインディング定義にマップされ、これらのページで使用されるデータ・コントロールが登録されます。

データ・オブジェクトを「データ・コントロール」パネルからメイン・フォームに初めてドロップしたときに、JDeveloperでは、「DataBindings.cpx」ファイルが作成され、データ・コントロールの使用方法データ・コントロール・アイコン AppModuleDataControl」が追加されています。データバインドされたオブジェクトを「データ・コントロール」パネルを使用してフォームまたはパネルに挿入するたびに、そのフォームまたはパネルに対するページ定義ファイルが作成され(作成されていない場合)、ページ定義ファイルのエントリで「DataBindings.cpx」ファイルが更新されます(追加されていない場合)。ここまでの例では、2つのページ定義ファイル・エントリバインディング・コンテキスト・アイコン view_FormPageDef」バインディング・コンテキスト・アイコン view_PanelOrdersView1HelperPageDef」があります。これらは、メイン・フォームのページ定義ファイルとマスター編集フォーム・パネルのページ定義ファイルをそれぞれ表しています。