0

我有一个 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) 中显示的相同值未显示在扩展区域中。

我在同一页面中有另一个数据表(就像这样)。用萤火虫调试我意识到它正在刷新另一个数据表,并发送请求,就好像我正在按下另一个数据表的行扩展一样。

有什么帮助吗?

谢谢!

4

2 回答 2

0

你用的是什么版本?我相信我记得不久前列出的类似错误。如果您还没有,请尝试升级到 3.2。

于 2012-04-30T14:21:11.497 回答
0

问题是我在表中使用了相同的 widgetVar 名称。

于 2012-04-30T19:25:29.613 回答