ADFバインディングを使用したJSP選択リストの作成

次のADFデータバインドUIコンポーネントについては、LOV(値リスト)モードでADFリスト・バインディングを設定できます。

LOVバインディングにより、ユーザーは1つ以上の属性のデータ・コレクション行が表示されたリストから値を選択できるようになります。ユーザーが値を選択すると、この選択内容に基づいて別のデータ・コレクションの属性が1つ以上更新されます。このリスト・バインディング・エディタをLOVモードで使用して、ソースおよびターゲット・データ・コレクション、これらの属性間のバインディング、およびリスト・コンポーネントに表示する属性を定義します。

ADF LOVバインディングの詳細は、「ADF値リスト(LOV)バインディングについて」を参照してください。

表示用のLOVを定義するには、次のようにします。

  1. ADF対応のJSPページを作成します

    StrutsベースのJSPを作成する場合、Strutsページ・フローを使用してページを作成する必要があります。

  2. 「データ・コントロール・パレット」から、リストに表示するデータ属性をドラッグし、JSPページ上の目的の位置にドロップします。
  3. 表示されたポップアップ・メニューから、「値リスト」または「単一選択リスト」を選択します。
  4. 「アプリケーション・ナビゲータ」で、JSPページを右クリックし、「ページ定義に移動」を選択します。
  5. 「構造」ウィンドウに「ページ定義」が表示された状態で、「バインディング」ノードを開き、LOVコンポーネント用として作成されたリスト・バインディングをダブルクリックします。
  6. 「リスト・バインディング・エディタ」ダイアログで、「リスト・バインディング・モード」ドロップダウン・リストから「LOVモード」を選択します。
  7. 「LOVの更新属性」タブで、LOVに使用するデータ・コレクションを選択します。
  8. 選択したデータ・コレクションにアクセスするために指定したイテレータが「イテレータ」ドロップダウン・リストにすでに表示されている場合、選択内容のままにします。ドロップダウンが空の場合、「新規」をクリックし、イテレータを作成してドロップダウン・リストに表示されるようにします。

    警告: ドロップダウン・リストのイテレータの選択内容を変更すると、前に選択した属性が削除されます。イテレータの選択内容を変更する前に、元の属性の選択内容をメモしておいてください。必要な場合、元の属性の選択内容を更新せずに、「取消」を押して「バインディング」ダイアログを終了します。

  9. 「追加」をクリックし、2つのデータ・コレクション間で1つ以上の属性をバインドします。

    「リスト・バインディング・エディタ」の下の領域には、値リストを表示するためのコレクションと、属性の選択内容を受け入れるためのコレクションの間で使用可能なLOVバインディング属性のリストがある表が表示されます。

  10. Webページに表示されるフィールドに値を入力する属性を「LOV属性」ドロップダウンから選択します。

  11. LOV属性から値を受け入れる属性を「ターゲット属性」ドロップダウンから選択します。

  12. 「追加」を再度クリックし、同じLOVを使用して複数の属性をバインドします。

  13. 「LOVの表示属性」タブをクリックし、LOVウィンドウに表示する属性を選択します。

    「選択済の属性」リストには属性を必要な数だけ追加できますが、LOVバインディング・ターゲット属性(更新値を表示する属性)を含める必要はありません。たとえば、LOVウィンドウに都道府県の正式名称のリストが表示され、選択に応じて都道府県を示す2文字の郵便番号略称のターゲット属性が更新される場合、この略称はLOVウィンドウに表示される必要はありません。

  14. 「OK」をクリックし、バインディング設定を保存します。

新規LOVバインディングのメタデータがページ定義ファイル( PageDef.xml)に追加されます。

更新されたLOVターゲット属性値を表示するコンポーネントを挿入するには、次のようにします。

  1. 「データ・コントロール・パレット」から、LOVバインディングのターゲット属性として前に選択した属性を開いているWebページにドラッグします。

  2. 表示されたポップアップ・メニューから、更新済属性値を表示するため挿入するUIコンポーネントを選択します。

LOVに表示する行数を変更するには、次のようにします。

  1. 「表示」次の選択「構造」を選択し、「構造」ウィンドウを開きます。

  2. 「アプリケーション・ナビゲータ」で、LOVバインディングが含まれるJSPページを右クリックし、「ページ定義に移動」を選択します。

  3. 「構造」ウィンドウで、「実行可能ファイル」ノードを開き、イテレータのリストを表示します。

  4. LOVのソース・データ・コレクション用として作成したイテレータ・バインディングを選択します。

  5. 「プロパティ・インスペクタ」が表示されていない場合、「表示」 次の選択 「プロパティ・インスペクタ」を選択します。

  6. 「プロパティ・インスペクタ」の「レンジ・サイズ」フィールドで、値を編集して[Enter]キーを押します。

    注意: レンジ・サイズ値-1および0には特別な意味があります。-1の場合、コレクションで使用可能なオブジェクトがすべて戻されます。また、0の場合、コレクションでデータソースを取得するために使用された数と同じ数のオブジェクトが戻されます。

レンジ・サイズの操作の詳細は、「ADFイテレータ・バインディングを使用した行フェッチの制限」を参照してください。


データ・コントロール・パレットについて
ADF値リスト(LOV)バインディングについて
ADF LOVバインディングを使用したマスター/ディテール・フォームの作成
ADFデータ・コントロールを使用したJSPフォームの操作
ADFデータ・コントロールを使用したHTML表の操作