我有一个 JSF+Primefaces 3.2 应用程序。我在 ap:dataTable 中使用 p:rowExpansion。在某些情况下,它工作得很好,但对于某些记录,它不显示任何记录。
<p:dataTable id="accountTable" value="#{accountBean.accountList}" var="account"
rows ="10" paginator="true" paginatorPosition="bottom" widgetVar="accountTable">
<f:facet name="header">
</f:facet>
<p:column>
<p:rowToggler />
</p:column>
<p:column>
<h:outputText value="#{account.shortName}" />
</p:column>
<p:column headerText="#{msj.account_accountNumber}">
<h:outputText value="#{account.number}" />
</p:column>
<p:rowExpansion>
<h:panelGrid columns="2">
<f:facet name="header">
<h:outputText value="#{msj.detail} #{account.shortName} - #{account.number}" />
</f:facet>
<h:outputLabel value="#{msj.account_shortName}:" />
<h:outputText value="#{account.shortName}" />
<h:outputLabel value="#{msj.account_accountNumber}:"/>
<h:outputText value="#{account.number}"/>
<h:outputLabel value="#{msj.account_currency}:"/>
<h:outputText value="#{account.currency.code} - #{account.currency.description}"/>
</h:panelGrid>
</p:rowExpansion>
</p:dataTable>
这很奇怪,因为数据表 (account.shortName) 中显示的相同值未显示在扩展区域中。
我在同一页面中有另一个数据表(就像这样)。用萤火虫调试我意识到它正在刷新另一个数据表,并发送请求,就好像我正在按下另一个数据表的行扩展一样。
有什么帮助吗?
谢谢!