質問

コマンドボタンに複数のActionListenersを使用することは可能ですか?

そうでない場合は、これを回避する方法がありますか?

ご協力いただきありがとうございます!

役に立ちましたか?

解決

いいえ、2つのサーバー側のコールバックメソッドのみを追加できます。

  • actionListener
  • action.

<ice:commandButton action="#{bean.navigateTo}" actionListener="#{bean.doSomething}"/>

actionListener 戻る公的な方法を指す必要があります void そして、ActionEventを議論として取ります。通常、ナビゲーションロジックに関連しておらず、利点があるタスクに使用され、コントロールの古い(=変更)値を提供します。これは、チェックボックスのような入力コントロールで特に理にかなっています。

action を返す公的な方法を指す必要があります String 議論をすることなく。このメソッドは、ナビゲートに必要なことをすべて実行します。たとえば、追加の検証など(基本的なJSFバリーターによって処理されていない場合)。結果は、ナビゲーションルールと一致する必要があります faces-config.xml.

これにより、サーバーロジック内で複数のタスク(複数のActionListenerを使用する理由があると思います)を処理するのに十分な可能性が得られるはずです。

さらに、クライアント側のタスクのみを実行する必要がある場合は、* JavaScriptプロパティのいくつかを利用できます。

参照: アイスフェイスカスタムコンポーネントタグリブ

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top