プロセス・トレインの作成

プロセス・トレインを作成するには、nodeStampファセットに格納されているコマンド・コンポーネントをプロセス・トレイン・モデルにバインドします。モデルの詳細は、「プロセス・トレイン・モデルの作成」を参照してください。

nodeを変数として使用し、ProcessTrainコンポーネントをプロセス・トレイン・モデルにバインドすると、1つのcommandMenuItemコンポーネント・タグのみですべてのプロセス・トレイン項目を表示できます。この場合、#{node.label}は値として、#{node.getOutcome}はアクション・メソッドとして使用します。さらに、immediate属性とreadOnly属性をprocessTrainMenuModelにバインドすることによって、アクセス可能なノード、およびページ上のデータを検証するかどうかを決定できます。詳細は、「プロセス・トレインについて」を参照してください。

<af:processTrain var="node" value="#{processModel.model}">
  <f:facet name="nodeStamp">
    <af:commandMenuItem text="#{node.label}" action="#{node.getOutcome}"
                        immediate="#{processModel.model.immediate}"
                        readOnly="#{processModel.model.readOnly}"/>
  </f:facet>
</af:processTrain>    

プロセス・トレイン・モデルを使用してプロセス・トレインを作成する手順は、次のとおりです。

  1. プロセス・トレイン・モデルの作成手順に従います。
  2. プロセス・トレインのページごとにJSFページを作成します。手順1で作成した、ProcessMenuModelインスタンスを作成するマネージドBeanにprocessTrainコンポーネントをバインドします。前述のコードを参照として使用してください。モデルによってトレイン(つまり、表示されるリンクとその順序)が動的に決まり、現在フォーカス・パスにある項目が"selected"として設定されるため、各ページのメニューに同じコードを使用できます。
  3. 各ノードに対して複数のナビゲーション・ケースがあるグローバル・ナビゲーション・ルールを1つ作成します。各ケースのoutcomesview-idsは、モデルを作成した際に設定したプロパティと一致する必要があります。次に例を示します。
    <navigation-rule>
      ...
      <navigation-case>
        <from-outcome>go.info</from-outcome>
        <to-view-id>pages/info.jsp</to-view-id>
      </navigation-case>
      ...
    </navigation-rule>        

ナビゲーションのためのプロセス・トレインの使用
ADF Facesメニューのファセットおよびコンポーネントについて
ADF Facesコンポーネントの使用