Primefaces<;p:datatable>;筛选后的totalRecords未定义值

Primefaces<;p:datatable>;筛选后的totalRecords未定义值,primefaces,datatable,pagination,filtering,Primefaces,Datatable,Pagination,Filtering,我尝试使用Primefaces 4来计算totalRecords编号(过滤和不过滤时,他们会计算行号) totalRecords编号的分页器输出正在工作,直到我尝试筛选数据表: <p:dataTable id="tbl_queue" var="c" value="#{productionQueue.cartQueue}" widgetVar="queueTable" filteredValue="#{productionQueue.filteredCartQueue}" pagin

我尝试使用Primefaces 4来计算totalRecords编号(过滤和不过滤时,他们会计算行号)

totalRecords编号的分页器输出正在工作,直到我尝试筛选数据表:

<p:dataTable id="tbl_queue" var="c" value="#{productionQueue.cartQueue}" widgetVar="queueTable"
    filteredValue="#{productionQueue.filteredCartQueue}" paginator="true" 
    currentPageReportTemplate="Nb rows: {totalRecords}"
    paginatorTemplate="{CurrentPageReport}"> 

    <p:column id="Bumper_column" filterBy="name_bumper" headerText="Bumper"
    filterOptions="#{productionQueue.nameBumperOptionsString}"
    filterMatchMode="exact"
    styleClass="#{productionQueue.determineRowColor(c.date,c.hour)}">

                        <h:outputText value="#{c.name_bumper}" />

    </p:column>

                ... 
</p:datatable>

... 
每次更新后,totalRecords输出显示值:“undefined”

编辑(与PF Showcase示例相同的问题):

但我必须改变一些东西来运行示例…:

还有…:

因为当我尝试在Showcase中对示例进行任何更改时,我出现以下错误:


最后,我认为过滤器Nb行不起作用,因为Bean的类型(SessionScoped),我被它阻止了,因为我需要在这个页面中使用SessionScoped来管理我的数据表

您的问题可能是由筛选逻辑中的某些错误引起的

我做了一个小项目,它结合了PrimeFaces showcase中的分页和过滤器示例。我使用了
primefaces4.0
mojarrajsf2.2.8

以下是未应用过滤器的表格: 使用过滤器后:

从PrimeFaces showcase复制示例时(它使用
PrimeFaces 5.1
),因为filterMatchMode=“equals”在PrimeFaces 4.0中不可用,我在Tomcat控制台中遇到一个错误:

javax.faces.FacesException: Illegal filter match mode:equals
    at   org.primefaces.component.datatable.feature.FilterFeature.getFilterConstraint(FilterFeature.java:285)
at org.primefaces.component.datatable.feature.FilterFeature.filter(FilterFeature.java:130)
在当前页面信息中,我有您的
未定义的
值:

浏览器控制台中是否有任何错误?没有,Chrome控制台中没有任何javascript错误。PrimeFaces 4.0中的文档显示了与您类似的语法(filterBy=“name\u”)。但是在PrimeFaces 5.0中,它与3.4.2类似(filterBy=“#{c.name_buffer}”)。对于测试,您可以只保留列,暂时删除其余的过滤器选项以隔离问题。我现在无法测试你的代码。请查看PrimeFaces 5.0的filterBy语法是否有任何区别。如果我喜欢PF5.0或3.4.2(filterBy=“#{c.name_buffer}”),我已经有了“undefined”值,我的过滤器现在无法工作。。。因此,这肯定不是解决方案^^。您可以从PrimeFaces showcase中获取分页和筛选示例的代码,并将它们组合起来,看看是否仍然存在问题。你能把代码贴在过滤的地方吗?我没有这个未定义值的tomcat控制台错误。问题解决了:将Mojarra JSF 2.0.1更新到2.2解决了这个问题。