詳細アイコン バインド・タスク・フロー

ADFタスク・フローは、アプリケーションのアクティビティ間の制御フローを定義するための再利用可能なユニットです。アプリケーションの各タスク・フローには、ユーザーがタスクを完了できるようにアプリケーションのナビゲーション・グラフの一部が含まれています。たとえば、次の図は、CreateおよびConfirmの2つのアクティビティで構成される単純なタスク・フローを示しています。アクティビティ間の矢印を制御フロー・ケースと呼びます。アクティビティには、ビュー・ページ、メソッド・コール、他のタスク・フローをコールする操作などがあります。

単純なタスク・フロー

ADFバインド・タスク・フローは、常にデフォルト・アクティビティを指定する特殊な形式の再利用可能タスク・フローです。デフォルト・アクティビティは、バインド・タスク・フローへのエントリ時点で即時に実行する必要のある単一のエントリ・ポイントです。バインド・タスク・フローには、入力パラメータ、戻り値および再入力を使用できます。

「タスク・フローの作成」ダイアログでは、バインド・タスク・フローまたはバインドなしタスク・フローを作成できます。バインドなしタスク・フローは、アプリケーションのどのバインド・タスク・フローにも含まれていないすべてのアクティビティと制御フローで構成されます。この例では、「バインド・タスク・フローとして作成」を選択してバインド・タスク・フローを定義し、ビュー・アクティビティをページ・フラグメントに関連付けないため「ページ・フラグメントを使用して作成」の選択を解除します。

「タスク・フローの作成」ダイアログ、バインド・タスク・フロー

「タスク・フローの作成」ダイアログで「OK」をクリックすると、JDeveloperにより次の操作が実行されます。

空白キャンバス、タスク・フロー・ダイアグラマ

この例では、タスク・フロー・ダイアグラム上で、参照ページと詳細ページの間でナビゲートするためのアクティビティと制御フロー・ケースを作成します。

タスク・フロー・ダイアグラマ

デフォルト・アクティビティはBrowseで、「参照」ページ・アイコン上に緑の背景で示されます。Browseアクティビティは、すべての注文レコードを参照するためのナビゲーション・ボタンがある略称形式の「Orders」フォームを表示します。Moreアクティビティは、略称形式の「Orders」フォームに表示された現在の注文に関する完全な「Orders」フォームを表示します。初期状態では、タスク・フロー・ダイアグラム上のどちらのページ・アイコンにも、まだ物理ページ・ファイル(例: Browse.jspx)が作成されていないことを示す黄色い警告記号が付いています。実際のページ・ファイルを作成するには、ページ・アイコンをダブルクリックして「JSFページの作成」ダイアログを開きます。ページの作成後は、ページ・アイコン上の黄色い警告記号が削除されます。

ダイアグラマを使用してタスク・フロー・ダイアグラムを作成する際にJDeveloperにより追加されるメタデータを表示するには、エディタ・ウィンドウで「ソース」をクリックしてXMLソース・エディタに切り替えます。

XMLソース・エディタ、タスク・フロー定義

タスク・フロー定義の最上位レベル要素は<adfc-config>で、すべてのADFコントローラXMLソース・ファイルで最初に表示される要素です。バインド・タスク・フローのアクティビティと制御フローは、<task-flow-definition>メタデータ要素内の<adfc-config>内で定義されます。

バインド・タスク・フローは、<task-flow-definition>id属性で識別されます。<control-flow-rule>および<control-flow-case>要素では、各ビュー・アクティビティの制御フロー・ルールが指定されます。<view>要素はタスク・フローのビュー・アクティビティに対応します。

物理的な.jspxページ・ファイルを作成した後、JDeveloperにより物理的なJSFページ・ファイル名を識別する詳細メタデータが追加されます。次に例を示します。

<adfc-config xmlns="http://xmlns.oracle.com/adf/controller"...>
  <task-flow-definition id="orders-task-flow-definition">
  ...
    <view id="Browse">
      <page>/Browse.jspx</page>
    </view> 
  ...
  </task-flow-definition>
</adfc-config>