Java 如何在RichFaces中对datatable中的行进行排序?

Java 如何在RichFaces中对datatable中的行进行排序?,java,sorting,jsf-2,richfaces,Java,Sorting,Jsf 2,Richfaces,我试过这个 <rich:dataTable value="#{myBean.cities}" var="c"> <rich:column> <f:facet name="header"> <h:outputText value="City"></h:outputText> </f:facet> <h:outputText value="#{c.name}"/> </rich:column> &l

我试过这个

<rich:dataTable value="#{myBean.cities}" var="c">

<rich:column>
<f:facet name="header">
 <h:outputText value="City"></h:outputText>
</f:facet>
<h:outputText value="#{c.name}"/>
</rich:column>

<rich:column sortBy="#{c.population}">
<f:facet name="header">
 <h:outputText value="Population"></h:outputText>
</f:facet>
<h:outputText value="#{c.population}"/>
</rich:column>

</rich:dataTable>

但行没有排序


城市是
列表
城市。人口是int

我调查过,在RichFaces 3.3.3中,添加
就足够了关于
rich:dataTable
但在RichFaces 4中,我还必须添加:

  • rich:column的sortOrder属性
  • a4j:commandLink元素(在f:facet头中),其操作指向排序bean以切换asc/desc
  • 使用
    org.richfaces.component.SortOrder
    属性查看范围限定的托管bean SortBean