Независимо от того, что я использую (jsf ajax, bootsfaces, primefaces), флажок вызывает метод bean во втором клике. Я провел много исследований, пытался использовать fixviewstate из всех, ничего не работает. Метод bean запускается только при втором щелчке, никогда не на первом. вот пример с primefaces:JSF checkbox вызывает bean-метод только при втором нажатии
<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>
мои отступающие методы фасоли:
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
Что мне делать не так? Спасибо
ли вы проверить вызов с точки останова или с результатом в вашем браузере? Ваш слушатель изменяет значение, которое было отправлено с тем же обращением к предыдущему значению. Флажок пуст, вы щелкаете, jquery проверяет флажок, ajax отправляет «true», а ваш слушатель меняет его на false, значение перед тем, как вы щелкнете .... – Holger
Java EE 8 все еще проходит. – Tiny