无论我使用什么(jsf ajax、bootsfaces、primefaces),复选框都会在第二次单击时调用 bean 方法。我做了很多研究,尝试使用omnifaces的fixviewstate,没有任何效果。bean 方法仅在第二次点击时触发,从不在第一次点击时触发。这是 primefaces 的示例:
<h:form id="myformexample">
<b:row>
<b:column colSm="12">
<p:selectBooleanCheckbox id="value2zz" value="#{selectedEmployeeDayBean.morningActive}">
<p:ajax update="mypane" listener="#{selectedEmployeeDayBean.clickMorning()}" />
</p:selectBooleanCheckbox>
</b:column>
</b:row>
<h:panelGroup id="mypane">
<b:row>
<b:column colSm="12">
<h:outputText value="#{selectedEmployeeDayBean.morningActive}"/>
</b:column>
</b:row>
</h:panelGroup>
</h:form>
我的支持 bean 方法:
public boolean isMorningActive() {
return morningActive;
}
public void setMorningActive(boolean morningActive) {
this.morningActive = morningActive;
}
public void clickMorning(){
this.morningActive = !this.morningActive;
}
我使用 JSF 2.2 和 javaEE8,primefaces6.0 bootsfaces1.0,部署在 wildfly(jboss) 10.0
我做错了什么?谢谢