Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jsf-2/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jsf f:ajax侦听器未为h调用:selectBooleanCheckbox_Jsf_Jsf 2_Primefaces - Fatal编程技术网

Jsf f:ajax侦听器未为h调用:selectBooleanCheckbox

Jsf f:ajax侦听器未为h调用:selectBooleanCheckbox,jsf,jsf-2,primefaces,Jsf,Jsf 2,Primefaces,代码如下: <h:selectBooleanCheckbox value="#{user.data['selected']}"> <f:ajax event="click" listener="#{timetableBean.processUserEvents}" /> <f:attribute name="user" value="#{user}" /> </h:selectBooleanCheckbox> 单击复选框

代码如下:

<h:selectBooleanCheckbox value="#{user.data['selected']}">
      <f:ajax event="click" listener="#{timetableBean.processUserEvents}"  />
      <f:attribute name="user" value="#{user}" />
</h:selectBooleanCheckbox>
单击复选框确实会触发ajax提交,但根本不会调用侦听器方法。 最重要的是,没有错误消息,阶段正常完成

Im正在尝试mojarra 2.0.4-b09,在遇到此错误后,我更改为2.1.2,但相同的问题仍然存在

我做错什么了吗

多谢各位


更新 问题是将h:SelectBoolean复选框放在primefaces数据列表(p:datalist)中。把它放在外面很好。我想知道是什么问题。现在将在primefaces论坛上提问。

这里是谎言

问题实际上是将复选框放在p:dataList中,而没有将其封装在p:column中

在用p:column包装它之后,侦听器将被正常调用


希望有帮助

您的侦听器方法签名是否与public void processAjaxBehavior(javax.faces.event.AjaxBehaviorEvent)匹配?@Matt Handy:谢谢,我已经更新了上面的帖子,是的,我有这个签名。
public void processUserEvents(AjaxBehaviorEvent e) {
  User user = (User) e.getComponent().getAttributes().get("user");
  ...
}