Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/video/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
Hibernate var是集合,而不是项_Hibernate_Primefaces - Fatal编程技术网

Hibernate var是集合,而不是项

Hibernate var是集合,而不是项,hibernate,primefaces,Hibernate,Primefaces,我在一个“RSVP”对象集合中循环,并打印出每个对象的“Name”属性的值,如下所示 <p:dataTable id="rsvpDataTable" var="rsvp" value="#{eventController.event.rsvps}"... <h:outputText value="#{rsvp.name}" /> </p:dataTable> 您不能在集合上迭代,目前这是JSF的限制。JSF2.2将能够做到这一点 也就是说,你可以自己转换,或

我在一个“RSVP”对象集合中循环,并打印出每个对象的“Name”属性的值,如下所示

<p:dataTable id="rsvpDataTable" var="rsvp" value="#{eventController.event.rsvps}"...
   <h:outputText value="#{rsvp.name}" />
</p:dataTable>

您不能在
集合上迭代,目前这是JSF的限制。JSF2.2将能够做到这一点

也就是说,你可以自己转换,或者,我会做的,你可以使用。你不必重新发明轮子。:)

另见BalusC



至于Hibernate返回的是一个
PersistentSet
,这正是它的工作方式。Hibernate有自己的
Set
实现,因此它可以实现延迟加载等功能。

您的
PersistentSet
是否有getter“getName()”?因为这就是jsf要寻找的是的,我的事件类有一个getRsvps()返回一个集合,而Rsvp类有一个getName()方法。它一直在工作,直到(我想)我改变了加载策略,但我不明白是什么导致它出错。eventController中的所有突发事件都是faces ManagedBean(而不是CDI),因为我需要查看范围,不确定这是否相关。试着用列表包装您的集合(使
getRsvps()
返回列表)看看它是否有效…干杯,丹尼尔,你也是对的,它实际上曾经是一个列表,这就是为什么它曾经有效。。。啊!非常感谢,特别是对(当前)JSF限制的深入了解。现在很好用。我做了一些重构,把它从一个列表改成了一个集合,试图解决另一个问题,这就是造成这个问题的原因。@RinaldoPJr使用Omnifaces#{of:setToList}创建一个可编辑的数据表是可能的吗。我试过了,但没有成功。需要澄清。“我应该单独问这个问题吗?@johny,我不这么认为,但是BalusC可以更准确地回答你。”。也许你应该作为一个新问题发布。