使用PrimeFaces 5.0。
我的数据表使用延迟加载和实时滚动,我尝试过滤这两个字段:
<p:dataTable id="eventsTable" value="#{eventController.eventModel}" var="event" lazy="true"
scrollRows="100" liveScroll="true" scrollable="true" scrollHeight="500">
<p:column headerText="EID" filterBy="#{enent.eid}">
<h:outputText value="#{event.eid}" />
</p:column>
<p:column headerText="Type" filterBy="#{event.type}">
<h:outputText value="#{event.type}" />
</p:column>
</p:dataTable>
初始加载正确检索数据,实时滚动似乎工作正常。
但是当我尝试过滤其中一个字段时,数据表被完全清空(它甚至没有显示&#34;没有找到记录&#34;消息)。当我调试时,我可以看到我的查询正确执行并返回数据。
此外,如果我使用分页而不是liveScroll进行切换,则页面会延迟正确加载,并且过滤器也可以正常工作。
有什么想法吗?
答案 0 :(得分:2)
您必须设置数据表的rows属性。