【发布时间】:2011-02-04 07:48:16
【问题描述】:
我有一个 jsp 页面,其中包含一个 rich:dataTable,其中包含一些关于我的客户的数据。
在每一行中,我都有另一个 rich:dataTable,其中包含当前客户的一些佣金率。
代码是这样的:
<rich:dataTable id="clientList" value="#{clientsBean.model}" var="client" rows="15">
<rich:column id="nameColumn">
<f:facet name="header">
<h:outputText value="#{msg.manageclients_client_name}" />
</f:facet>
<h:outputText id="name" value="#{client.name}" />
</rich:column>
<rich:column id="clientRatesColumn">
<f:facet name="header">
<h:outputText value="#{msg.manageclients_client_rates}" />
</f:facet>
<rich:dataTable id="clientRates" value="#{client.clientRates}" var="clientRate">
<rich:column id="clientRateProduct" sortable="true" sortBy="#{clientRate.product.qualifiedName}">
<f:facet name="header">
<h:outputText value="#{msg.manageclients_rate_product}" />
</f:facet>
<h:outputText value="#{clientRate.product.qualifiedName}" />
</rich:column>
...
</rich:dataTable>
</rich:column>
...
</rich:dataTable>
如您所见,嵌入的 rich:dataTable (id=clientRates) 包含一个可排序的列 (id=clientRateProduct)。
我的问题是,如果我单击当前客户端的 clientRateProduct 列中的排序图标 all clientRates 数据表将被排序(不仅仅是当前客户端的那个)。
我希望仅对当前的clientRates 数据表执行排序操作。有人可以提出解决方案吗?
我使用 RichFaces 3.2.2.SR1。 & Tomcat 6.0.29
【问题讨论】: