ADF Swingパネルにディテール表を作成する手順を完了すると、Javaビジュアル・エディタのパネルは次のように表示されます。
構造ウィンドウには、UIコンポーネント階層が次のように表示されます。
アプリケーション・ナビゲータでは、「ビュー」プロジェクトを完全に展開すると次のようになります。
「ADF Swingの空のパネルを作成」ダイアログで生成されるファイルは、次のとおりです。
アプリケーション・ナビゲータで、「DataBindings.cpx」および「OrderItemsPanelPageDef.xml」をダブルクリックして、各ファイルを概要エディタで開きます。必要な場合は、エディタ・ウィンドウの「概要」をクリックして、概要エディタにファイルを表示します。
「DataBindings.cpx」では、JDeveloperによって、3番目のページ定義ファイル・エントリである「 view_OrderItemsPanelPageDef」が追加されていることに注意してください。このエントリは、ディテール・パネルのページ定義ファイルを表します。
ディテール・コレクション「 OrderItemsView2」をビジュアル・エディタのパネルに初めてドロップしたときに、JDeveloperでは、イテレータ・バインディング「
OrderItemsView2Iterator」がディテール・パネルのページ定義「OrderItemsPanelPageDef.xml」に追加されています。イテレータ・バインディングでは、ディテール・コレクションのイテレータが参照され、そのデータ・オブジェクトの反復操作が容易になります。また、コレクション内のデータ・オブジェクトの現在位置と状態も管理されます。
「ソース」をクリックすると、OrderItemsPanelPageDef.xmlのXMLソース・コードが表示されます。
表コントロールによって表示されるデータ・オブジェクトの数は、イテレータ・バインディングのRangeSizeの値によって決まります。RangeSizeイテレータの値はページ定義の宣言プロパティであるため、UI設計者はこの値を変更して、ビジネス・サービスからフェッチするデータ・オブジェクトの数を簡単に指定できます。イテレータ・バインディングでは、一度に25個のデータ・オブジェクトがデフォルトでフェッチされ表示されます。
<executables>
<iterator id="OrderItemsView2Iterator" RangeSize="25"
Binds="OrderItemsView2" DataControl="AppModuleDataControl"/>
</executables>
表コントロールをディテール・パネルにドロップしたときに、JDeveloperでは、「 OrderItemsView2」ADFバインディング・オブジェクトがページ定義ファイルに追加されています。表バインディング・オブジェクトはイテレータ・バインディングを参照し、イテレータ・バインディングはデータ・コレクションのイテレータを参照します。表バインディングの
AttrNames
要素には、表の各行で表示または参照できるようにする各属性の子要素が含まれています。
<bindings>
<table ColumnSort="entireCollection" IterBinding="OrderItemsView2Iterator"
id="OrderItemsView2" xmlns="http://xmlns.oracle.com/adfm/jcuimodel">
<AttrNames xmlns="http://xmlns.oracle.com/adfm/uimodel">
<Item Value="OrderId"/>
<Item Value="LineItemId"/>
<Item Value="ProductId"/>
<Item Value="Quantity"/>
<Item Value="UnitPrice"/>
...
</AttrNames>
</table>
</bindings>
Copyright © 1997, 2009, Oracle. All rights reserved.