rich:datatable中的默认排序列

big*_*Guy 5 java sorting datatable jsf richfaces

我有丰富的:dataTable,有多个可排序的列.

<rich:column sortBy="#{user.uid}">
...
<rich:column sortBy="#{user.sn}">
...
etc.
Run Code Online (Sandbox Code Playgroud)

排序工作正常.但是,加载页面时,表始终按第1列排序.如何设置"默认"排序列?(例如,带有user.sn的那个)

Rai*_*und 14

列的排序顺序由其sortOrder属性定义:NONE,ASCENDING或DESCENDING.

默认情况下,此属性为NONE - 因此,最初表不会在任何列(也不是第一列)上排序.它使用数据模型的顺序.

要定义初始排序列,请设置此列的sortOrder,例如

<rich:column sortBy="#{user.sn}" sortOrder="ASCENDING">

这对于rich来说是正确的:dataTable,rich:scrollableDataTable和rich:extendedDataTable.


mor*_*rja 0

我想你必须对底层列表进行排序。默认情况下,该表的排序方式与您作为值传递的列表类似。