pe:triStateCheckbox不适用于p:ajax

时间:2015-04-01 14:12:08

标签: jsf jsf-2 primefaces primefaces-extensions

我在WAS 8.0.0.10上使用PF 5.1 + PF Extensions 3.0.0 + OmniFaces 1.8.1

尝试从here制作以下示例 <pe:triStateCheckbox/>但是当我改变组件的状态时没有调用监听器,也没有给出错误。

这是我的 JSF 页面代码:

<pe:triStateCheckbox style="vertical-align:middle;" value="#{bean.notification}">
    <p:ajax listener="#{bean.toggleNotification}"/>
</pe:triStateCheckbox>

和bean:

private int notification;

public void toggleNotification() {
    System.out.println("toggle");
}

//getters and setters

我可能做错了什么?谢谢。

1 个答案:

答案 0 :(得分:6)

好的,展示中的代码与现实世界中的代码不同。去github我们需要指定事件名称:

<pe:triStateCheckbox id="ajaxTriState" value="#{triStateCheckBoxController.value2}">
       <p:ajax event="change"
               update="growl"
               listener="#{triStateCheckBoxController.addMessage}"/>
</pe:triStateCheckbox>