0

Beanからビューに値を送信しています。ビューからBeanに値を送信しています。「acitonListener」などのイベントを操作する場合はすべて問題ありませんが、ユーザーを他のページに送信したいのです(ナビゲーションルールを使用すると、機能します)完璧)ボタンをクリックしたとき、その前にBeanに1つの値を設定したいのですが、どうすればよいですか?

私はこのようなことをしています

   <p:commandButton value="Send" id="sendButton" action="#{myBean.myMethod}" 
    update=":form:growTop" >
   </p:commandButton>

<h:outputText/>その前は、私のBeanからの値を含むテーブルしかありませんが、これを行う方法はありますか?

ありがとう

4

1 に答える 1

1
action="#{myBean.myMethod(myParameter)}

上記のメソッド式は、バッキングBeanの関数に送信myParameterされます。myMethod

public void myMethod(String myParameter) {
    // ...
}

アクションメソッドから有効なナビゲーション結果を返すことで、ユーザーを次のページに送ることもできます。

public String myMethod(String myParameter) {
    // ...
    return "myPage?faces-redirect=true";
}

具体的なケースでは、印刷されたバッキングBeanの値がある場合:

<h:outputText value=#{myBean.myParameter}/>

次のアクション

<p:commandButton value="Send" id="sendButton" action="#{myBean.myMethod(myParameter)} 
    update=":form:growTop" >
</p:commandButton>

myParameterアクションメソッドに渡されます。

primefaces datatableで期待される動作を取得するには、少なくとも@ViewScopedテーブル値の背後にあるバッキングBeanを使用します。

于 2012-10-20T05:53:39.597 に答える