<af:setActionListener>

setActionListener set action listener setAction setaction


af:setActionListenerは完全にサポートされていますが、最善の方法は、af:setPropertyListenerをtype="action"で使用することです。

setActionListenerタグは、アクション・ソース(<commandButton>、<commandLink>など)によってナビゲーションの前に値を設定できるようにする宣言的方法です。このタグは、ADF Facesが提供するpageFlowScopeのELスコープとともに使用する場合、最も役に立ちます。これはJavaコードを記述することなく、あるページから別のページに詳細を渡すことができるためです。このタグはADF FacesコマンドとJSF標準タグの両方とともに使用できます。一般に、これは標準的なActionSourceインタフェースを実装する、すべてのコンポーネントとともに使用できます。

例:

この例では、「Show...」ボタンがある表を示します。ボタンが押されると、次のことが起こります。

  1. #{row}の値が取得されます。これは、表内の現在の行に対応しています。
  2. そのオブジェクトが、detailプロパティとしてプロセス・スコープに格納されます。
  3. ユーザーは、このページの結果であるshowDetailに移動します(<h:commandButton>のactionプロパティのため)。

ターゲット・ページは、プロセス・スコープから詳細オブジェクトを取得でき、必要に応じて使用できます。

<source>
            <h:dataTable var="row" value="#{....}">
              ...
              <h:column>
                <h:commandButton value="Show..." action="showDetail" ..>
                  <af:setActionListener from="#{row}"
                                        to="#{pageFlowScope.detail}"/>
                </h:commandButton>
              </h:column>
            </h:dataTable>

</source>

属性

名前 ELのサポート 説明
from Object あり 値のソースは、EL式または定数値にできます。
to Object ELのみ 値のターゲット。これはEL式である必要があります。