请查看我的jsf:http://pastebin.com/yRLyZ9KJ或http://pastebin.com/hqYSU5eJ 问题是:首先重新登录loginPage,然后调用#{loginBean.onLanguageSelect}。为什么? PS:抱歉我的英语不好。
答案 0 :(得分:0)
这里的问题相同。我需要在valueChangeListener之后使用reRender。例如:
<h:selectOneMenu valueChangeListener="#{back.change}"
onchange="submit()" value="#{item.value}" >
<f:selectItems value="#{back.ordemItems}"/>
<a4j:support event="onchange" reRender="parentPainel" />
</h:selectOneMenu>
答案 1 :(得分:0)
valueChangeListener不是要走的路。我有同样的问题通过使用onclick解决了它。 它将是:
<h:selectOneMenu id="language" binding="#{loginBean.languageEntry}">
<f:selectItems value="#{loginBean.languages}" />
<a4j:support event="onclick" ajaxSingle="true" reRender="loginPage" actionListener="#{loginBean.onLanguageSelect}" />
</h:selectOneMenu>