每当我尝试将f:ajax
附加到h:panelGroup
时,我都会收到错误:
父级不是复合组件或 ClientBehaviorHolder类型
我曾经能够使用Richfaces和JSF 1.2来做到这一点。 有解决方法吗?我应该引入Richfaces 4.0吗?
这很奇怪,因为它显然是可能的(我使用jQuery进行客户端操作)
更新 Richfaces 4.0无济于事。尝试并得到同样的错误。
代码示例:
<li>
<f:param value="#{contact.getUUID}" name="currContactUUID" />
<f:ajax event="click" onevent="console.log('Event Happend in panelgroup')" >
<h:panelGroup styleclass="contacts_tab_contacts_list_quickview_box">
<h:outputText value="#{contact.firstName} #{contact.familyName}"/>
</h:panelGroup>
</ajax>
</li>
答案 0 :(得分:1)
对于panelGroup来说,这是不可能的。 f:ajax
只能用于实现javax.faces.component.behavior.ClientBehaviorHolder界面的组件,而h:panelGroup
则不能。
您可以使用周围的ajax标记将您的组件包装在panelGroup中:
<f:ajax>
... (your components here)
</f:ajax>