0

h:SelectOneMenu 要素で valueChange イベントをインターセプトする必要がありますが、機能しません。何が見逃せますか?

私はこれを両方試しました:

<h:selectOneMenu value="#{MainPage.<value_name>}"
                         valueChangeListener="#{MainPage.<method_name>}">
...
</h:selectOneMenu>

この:

<h:selectOneMenu value="#{MainPage.<value_name>}">
...
    <f:ajax render="@form" event="change" listener="#{MainPage.<method_name>}"/>
</h:selectOneMenu>

これらは機能したくありません。
これが私の方法です:

public void <method_name>(ValueChangeEvent e){
    ...
    System.out.println(">>>Changed<<<");
}

その結果、何も起こらず、ログにエラーはありません。
jboss AS 7.1 で NetBeans 7.3 を使用しています。

4

2 に答える 2

0

最初の方法として、必須属性を追加してみてください:

<h:selectOneMenu onchange="submit()" ... >

2 番目の方法では、メソッド内のパラメーター イベントのクラスは : である必要がありますAjaxBehaviorEvent

また、コントローラ Bean が であることを確認してください@ViewScoped

于 2013-10-16T00:07:14.577 に答える
0

<h:message/>タグは私の問題に対処するのに役立ちました。問題は型にあり、カスタム コンバーターが不足していました。

于 2013-10-18T00:05:34.840 に答える