我目前正在研究JSF项目的查找表。 我有这个表,以后会链接到数据库时显示很多代码(现在它是硬编码的数据)所以我添加了primefaces 5.0分页。这里的问题是我有一个Bug,当我为特定代码创建一个表,更改代码,然后返回到此表时发生。 Look what happens:
无限数量的页面只有3个数据...每个页面都相同,如果我更改每页的结果数量,问题就会消失。
以下是代码中的表格:
<h:form id="currentTable">
<p:growl id="msgs" showDetail="true"/>
<p:dataTable widgetVar="dataTableWidgetVar" var="lookupRow"
value="#{lookupsView.currentLookup.lookupRows}" editable="true"
style="margin-bottom:20px"
styleClass="tableWrapText"
paginator="true"
paginatorTemplate="{CurrentPageReport} {FirstPageLink} {PreviousPageLink} {PageLinks} {NextPageLink} {LastPageLink} {RowsPerPageDropdown}"
rowsPerPageTemplate="10, 20, 30, 40, 50, 100, 200"
filteredValue="#{lookupsView.filteredLookupRows}">
<p:ajax event="rowEdit" update=":currentTable:msgs" listener="#{lookupsView.onRowEdit}"/>
<p:ajax event="rowEditCancel" update=":currentTable:msgs"
listener="#{lookupsView.onRowCancel}"/>
<p:column headerText="XBRL Code" filterBy="#{lookupRow.xbrlCodeMember.memberValue}"
footerText="contains" filterMatchMode="contains">
<h:outputText value="#{lookupRow.xbrlCodeMember.memberValue}"/>
</p:column>
<p:column headerText="Client Code " filterBy="#{lookupRow.clientCode}" footerText="contains"
filterMatchMode="contains">
<p:cellEditor>
<f:facet name="output"> <h:outputText value="#{lookupRow.clientCode}"/></f:facet>
<f:facet name="input"><p:inputText value="#{lookupRow.clientCode}" style="width:100%"/></f:facet>
</p:cellEditor>
</p:column>
<p:column headerText="XBRL Label" filterBy="#{lookupRow.xbrlCodeMember.memberDescription}"
footerText="contains" filterMatchMode="contains">
<h:outputText value="#{lookupRow.xbrlCodeMember.memberDescription}"/>
</p:column>
<p:column headerText="Client Label" filterBy="#{lookupRow.clientDescription}"
footerText="contains" filterMatchMode="contains">
<p:cellEditor>
<f:facet name="output"><h:outputText value="#{lookupRow.clientDescription}"/></f:facet>
<f:facet name="input"><p:inputText value="#{lookupRow.clientDescription}"
style="width:100%"/></f:facet>
</p:cellEditor>
</p:column>
<p:column style="width:32px">
<p:rowEditor/>
</p:column>
</p:dataTable>
</h:form>
你知道这个bug可能来自哪里吗? 它位于Jboss7服务器上。
答案 0 :(得分:1)
我找到了解决方案,这是因为&#34;#{lookupsView.filteredLookupRows}&#34;变量,你必须通过将它设置为null来清理,每次你改变你显示的表或它以某种方式中断。