Oracle Application Development Framework(Oracle ADF)では、Oracle ADFデータ・コントロールが特定のビジネス・オブジェクトに対して公開する属性と操作をサポートするために、次のような複数のタイプのバインディングを使用できます。
データ・コントロール・パレット、ビジュアル・エディタ、構造ウィンドウおよびプロパティ・インスペクタを操作して、これらのバインディングを作成します。アプリケーションにおけるバインディングは、次の方法により表示できます。
Webページのソース・コード・ビュー。EL(式言語)機能を使用して実行時に評価される式の中でバインディング参照が表示されます。コード・ビューでは、式は次のように表示されます。
<c:forEach var="rv" items="${bindings.DataBindingObject.theCollectionProperty}"
データ・バインディング・オブジェクトは、bindings
変数を介してOracle ADFバインディング・コンテナにアクセスします。この変数は、ADFバインディング・コンテキスト内でバインディング・コンテナのネームスペースを指定します。モデル2 Webアプリケーションでは、バインディング・コンテナはOracle ADFクラス oracle.adf.controller.struts.actions.DataAction
で初期化されます。
注意: プロジェクトではDataAction
クラスは表示されませんが、struts-config.xml
ファイルにあるアクション・マッピングDataAction
によって、pageNameUIModel.xml
ファイルからのバインディング・コンテナを初期化するmodelReference
プロパティが定義されています。
JClientパネルまたはフォームのコード・ビュー。UIコンポーネントに対するsetModel()
メソッドのコールがデータ・バインディング・オブジェクトを初期化し、ADFバインディング・コンテキストを介してバインディング・コンテナ(データ・パネルに対するsetBindingContext()
メソッドのコールで指定される)にアクセスします。
バインディング・コンテナは、パネル・バインディングが作成された時点で、JClientプロジェクト内のPanelName UIModel.xml
ファイルにより初期化されます(JUPanelBinding panelBinding
コンストラクタにより)。
WebページまたはJClientパネルいずれかのクライアント・タイプの構造ウィンドウ。ビュー・ドキュメントで各UIコンポーネントに対して定義されたデータ・バインディング・オブジェクトが、(UIモデル)タブに表示されます。バインディング定義の宣言プロパティを編集するには、右クリックして「編集」を選択します。実行時のみのプロパティに設定できる値を参照するには、バインディング・ノードを選択して[F1]キーを押してください。
次のセクションでは、各バインディングについて説明します。
イテレータ・バインディングは、 oracle.jbo.uicli.binding.JUIteratorBinding
クラスによって実装されます。
イテレータ・バインディングは、Oracle ADFバインディング・コンテキストへアクセスするためにアプリケーションにより作成されるランタイム・オブジェクトです。イテレータ・バインディングは、バインドされるデータ・コレクションへの参照を保持してそれにアクセスし、そのデータ・オブジェクトを反復します。イテレータ・バインディングは、行の現在位置と行の状態を値バインディングに通知します。すると、定義された値バインディングによってUIコンポーネントが、反復されているコレクションの現在のオブジェクトを表示または更新できるようになります。このようにして、イテレータ・バインディングは様々なビジネス・サービスからの様々なコレクション・タイプに対し、同一のアクセス方法を提供します。
ADF Business Componentsビュー・オブジェクトの場合、UIコンポーネントに対するADFバインディングは、行の現在位置をインジケータで表示できることがあります。たとえば表の中では、実行時の現在の行が、その行の最初の列に表示されるアスタリスク(*)記号によって識別されます。イテレータ・バインディングを介して行の現在位置インジケータを使用できるのは、バインドされるビュー・オブジェクトにキー属性が定義されている場合のみです。バインドされるビュー・オブジェクトにキー属性が定義されていない場合、表のどの行にもアスタリスクが表示されます。この場合、ビジュアル・エディタでUIコンポーネントを編集して、実行時にアスタリスクが表示されないようにすることができます。
イテレータ・バインディングは、独自のランタイム・プロパティ・セットを定義します。
属性値バインディングは、 oracle.jbo.uicli.binding.JUCtrlValueBinding
クラスによって実装されます。
属性値バインディングでは、データ・バインドされたUIコンポーネントが、指定されたコレクションのデータ・オブジェクトの属性値を取得できます。UIコンポーネントのタイプによっては、ユーザーが属性値を表示でき、また編集が可能な場合もあります。
属性値バインディングは、独自のランタイム・プロパティ・セットを定義します。
ブール値バインディングは、 oracle.jbo.uicli.binding.JUCtrlBoolBinding
クラスによって実装されます。
ブール・バインディングは、コントロールの選択状態に基づいて、指定されたコレクションのデータ・オブジェクトの属性値を取得します。
ブール値バインディングは、独自のランタイム・プロパティ・セットを定義します。
リスト・バインディングは、 oracle.jbo.uicli.binding.JUCtrlListBinding
クラスによって実装されます。
UIコンポーネントのタイプに応じて、リスト・バインディングは次のことを実行できます。
リスト値バインディングは、独自のランタイム・プロパティ・セットを定義します。
レンジ・バインディングは、 oracle.jbo.uicli.binding.JUCtrlRangeBinding
クラスによって実装されます。
レンジ・バインディングを使用すると、データ・バインドされたUIコンポーネントが、指定されたコレクション内のデータ・オブジェクトから属性値を取得し、そのレンジに対する現在のデータ・オブジェクトの相対位置を表示できます。
レンジ・バインディングは、独自のランタイム・プロパティ・セットを定義します。
スクロール・バインディングは、 oracle.jbo.uicli.binding.JUCtrlScrollBinding
クラスによって実装されます。
スクロール・バインディングを使用すると、データ・バインドされたUIコンポーネントは、選択されたコレクション内のデータ・オブジェクトの現在位置を表示できます。ユーザーがUIコンポーネントをスクロールした場合、スクロール・バインディングはコレクション内での現在の位置を維持します。
スクロール値バインディングは、独自のランタイム・プロパティ・セットを定義します。
アクション・バインディングは、 oracle.jbo.uicli.binding.JUCtrlActionBinding
クラスによって実装されます。
アクション・バインディングは、Oracle Application Development Framework(Oracle ADF)で定義されるバインディング・オブジェクトの一種で、バインド・データ・コレクションの行セット・イテレータに対してアクションを実行します。実行時に、ユーザーがボタン・コントロールを使用してアクションを開始すると、アクション・バインディングはOracle ADFバインディング・コンテキストにアクセスし、選択されたコレクションのデータ・オブジェクトに対して、指定されたアクションを実行します。アクション・バインディングは、事前定義された多くのアクションをサポートしています。
アクション・バインディングは、独自のランタイム・プロパティ・セットを定義します。
ADFバインディング・コンテキストが実行時にこれらのバインディング・オブジェクトへのアクセスを提供する方法の詳細は、「Oracle ADFクライアント・バインディング・コンテキストについて」を参照してください。
データ・コントロール・パレットの使用の詳細は、次のトピックを参照してください。
バインディングのカスタマイズの詳細は、次のトピックを参照してください。
Copyright © 1997, 2004, Oracle. All rights reserved.