アクション・メソッドは、ナビゲーション処理を実行するバッキングBeanのメソッドです。このメソッドは、バッキングBeanのアクション・リスナー・メソッドとは異なることに注意してください。通常、アクション・リスナー・メソッドは、ナビゲーション処理を実行しません。
アクション・メソッドは、パラメータなしのpublicメソッドで、文字列値を戻す必要があります。この文字列値は、論理的な結果文字列でアクション結果とも呼ばれます。結果の値によって、次に表示されるページが決定します。
アクション・メソッドをコマンド・コンポーネントに設定するには、メソッド・バインディング式を参照するコンポーネントのaction
属性を使用するか、結果のリテラル値(errorなど)を指定します。次に例を示します。
<h:commandButton action="#{someBean.someActionmethod}"/>
<h:commandButton action="success"/>
アクション・メソッドを使用してアプリケーションのナビゲーションを処理する場合は、このメソッドを起動するためにActionListener
インタフェースを実装する必要がありません。これは、JSFでは、デフォルトのActionListener
を使用して、ページ・ナビゲーション用のアクション・メソッドを起動するためです。メソッドの論理的な結果の値は、レンダー・レスポンスに使用するページをJSFナビゲーション・ハンドラに指示するために使用されます。
アクション・メソッドは、ユーザー・インタフェースに関する情報が必要なアクションがあるときは、アクション・リスナー・メソッドと併用できます。カリフォルニア州のイメージを使用したボタンがあり、ユーザーは郡を選択してその群に関する情報を表示できるようにするとします。この場合は、各郡に対する結果を格納することによって選択された郡を判別するアクション・リスナー・メソッドを実装し、さらに結果値を使用して適切な郡ページに移動するアクション・メソッドを実装できます。
コンポーネントでアクション・メソッドとアクション・リスナー・メソッドを使用するには、これらのメソッドを次のコード・スニペットに示すように参照します。
<h:commandButton image="californiastate.jpg"
actionListener="#{someBean.someListenmethod}"
action="#{someBean.someActionmethod}"/>
ADF Facesコンポーネントでアクション結果が"dialog:
"で始まる場合、ADF Facesでは、新しいウィンドウでのページの起動が認識されます。
<af:commandButton text="Add"
action="dialog:chooseInteger"
id="buttonId"
windowWidth="300"
windowHeight="200"
partialSubmit="true"
useDialog="true"
returnListener="#{launchDialog.returned}"/>
ダイアログ・フレームワークの詳細は、「ADF Facesでのダイアログの起動」を参照してください。
アクション・イベントおよびリスナーについて
バッキングBean、メソッド・バインディングおよび自動コンポーネント・バインディングについて
コマンド・コンポーネントへの新規アクション・メソッドの設定
コマンド・コンポーネントへの既存アクション・メソッドの設定
コマンド・コンポーネントへのアクション結果文字列の設定
アクション・リスナー・メソッドの新規作成およびコマンド・コンポーネントへの登録
Copyright © 1997, 2007, Oracle. All rights reserved.