ADF対応Webページでの検索モードを使用した作業

ビジネス・サービス・プロジェクト用のADF対応Webページを作成する場合、そのページに対する検索モードを有効にした入力フォームを使用することにより、パラメータ付き問合せをサポートできます。検索モードでは、ADFバインディングを介してユーザーが入力フォームから検索条件を入力できます。

注意: ADF Business Componentsの属性がオブジェクト型、配列型およびLOBドメイン型である場合は、検索モードを開始できません。

問合せフォームに対して検索モードを有効にするには、次のようにします。

検索モードで動作するStruts Webページを作成するには、次のようにします。

  1. 設計対象のADF対応Webページ用に、データ・コントロール・パレットを開きます

    これは、Webページを実行するために単一のページ・フローをすでに作成したことを前提としています。

  2. データ・コントロール・パレットで、問合せ可能にするデータ・オブジェクトを含んでいるデータ・コレクションを選択します。

  3. ドロップダウン・リストから「Input Form」を選択します。

  4. 入力フォームを作成するには、データ・コレクションをInput Formとして、開いているWebページにドラッグします。

    ビジュアル・エディタで、フォームが破線のボックスとして表示されます。

  5. ビジュアル・エディタで、「Submit」ボタンをクリックし、「削除」を押してそれをWebページから削除します。

  6. StrutsベースのWebアプリケーションの作業をしている場合、すでに選択されているデータ・コレクションの下にある「Operations」ノード・フォルダから「Execute」を選択し、ドロップダウン・リストから「Button」を選択します。

  7. 既存のHTMLフォームにそのボタンを追加します。そのボタンは、入力表の下、フォームの中に表示されます。

    検索と組み合されたアクションが実行されるまでは、フォームは検索モードになりません。実行ボタンがクリックされた場合、名前付きイベント"Execute"がStrutsページ・フローへ送信され、そのフローは検索操作を実行することによりそのイベントを処理します。

  8. Strutsページ・フロー・ダイアグラムに戻り、データ・コントロール・パレットで、すでに選択したものと同じデータ・コレクションの下にある「Operations」ノードから「Find」を選択します。

  9. データ・コントロール・パレットの上端から「Find」ノードを、Webページに対応するページ・フローにあるデータ・アクションまたはデータ・ページ・アイコンまでドラッグします。

  10. 結果ページのために他のアクションをページ・フローに挿入し、2つのアクションの間でフォワード遷移を描きます。そのフォワードをクリックし、Executeという名前に変更して、入力フォームで指定された名前付きイベントに一致させます。名前付きイベントでは、大/小文字の区別があります。

前述の手順で、Webページを入力モードに戻さない(ページを検索モードから他へ移行しない)単純なページ・フローが得られます。ページの作業をして、ユーザーが問合せを開始し、結果を表示し、最後は問合せの結果を入力フォームで表示して編集を可能にするページに戻れるようにするには、次のようにより複雑なページ・フローを使用できます。

問合せページを入力モードに戻すStrutsページ・フローを作成するには、次のようにします。

  1. ページ・フロー・ダイアグラムを開き、データ・アクション(DA1)とデータ・ページ(DP1)を挿入して、それら2つの間でフォワード遷移を描きます。

    Page flow displays first forward

  2. データ・ページ用のADF対応Webページを作成し、データ・コントロール・パレットからデータ・コレクションを「Input Form」としてドロップします。

  3. ページ・フロー・ダイアグラムに戻り、新しいデータ・アクション(DA2)とデータ・ページ(DP2)を挿入して、それら2つの項目の間でフォワード遷移を描きます。

    Page flow displays second forward

  4. ページ・フローの「ソース」タブをクリックし、新しいデータ・アクション(DA2)のmodelReferenceプロパティを見つけ、最初のWebページのUIモデル(DP1UIModel)に合せて、その値を変更します。

    
    	<action path="/DA2" className="oracle.adf.controller.struts.actions.DataActionMapping"
                            type="oracle.adf.controller.struts.actions.DataAction" name="DataForm">
              <set-property property="modelReference" value="DP1UIModel"/>
              <forward name="success" path="/DP2.do"/>
         </action>        

    このステップを使用することにより、Webページは引き続き同じバインディング・コンテナを参照して、同じデータ・バインド・コントロールを操作することになります。

    このステップはプロパティ・インスペクタを使用しても行うことができます。構造ウィンドウで新しいデータ・アクション(DA2)ノードの下にあるmodelReferenceプロパティのノードを選択し、プロパティ・インスペクタに表示されるvalue項目を前述のように変更します。

  5. 最初のデータ・ページ(DP1)から新しいデータ・アクション(DA2)へ向かって3番目のフォワード遷移を描き、その名前を「Submit」に変更します。

    Page flow displays third forward

  6. 同じデータ・コレクションに対する「Find」操作を、最初のデータ・アクション(DA1)にドロップします。

  7. 同じデータ・コレクションに対する「Execute」操作を、2番目のデータ・アクション(DA2)にドロップします。

  8. 2番目のデータ・ページ(DP2)用のWebページを作成し、データ・コントロール・パレットから同じデータ・コレクションを「Input Form」としてドロップします。

  9. ページ・フロー・データグラムに戻り、2番目のデータ・ページ(DP2)から最初のデータ・アクション(DA1)へ向かって「Page Link」を描きます。

    Page flow displays page link


ADF Webクライアントの検索モードについて
JClientコントロールの検索モードについて

 

Copyright © 1997, 2004, Oracle. All rights reserved.