有没有人知道如何在rich:dataTable上正确启用排序,使用rich:columns标签动态生成列?
使用类似#{row [column]}的表达式设置sortBy对我不起作用。
我正在使用RichFaces 3.3.1GA。
以下是示例:
<rich:dataTable id="table" value="#{localeHandler.locales}" var="row">
<rich:columns value="#{localeHandler.columns}" var="column" sortBy="#{row[column]}" >
<f:facet name="header">
<h:outputText value="#{column}"/>
</f:facet>
<h:outputText value="#{row[column]}"/>
</rich:columns>
</rich:dataTable>
而localeHandler.locales是一个ArrayList,而localeHandler.columns只是一个包含以下值的ArrayList:
language, country, variant, displayName, displayLanguage, displayCountry, displayVariant
答案 0 :(得分:2)
尝试将sortOrder设置为每个列的org.richfaces.model.Ordering类型的bean属性
答案 1 :(得分:1)
我发现这个功能的最后一个版本是3.3.0.CR1 - 从3.3.0.CR2开始它已经坏了。
答案 2 :(得分:1)
请查看JIRA RF-6234了解变通方法。