2013-05-09 61 views
0

有沒有辦法在第一次加載時設置lazyDataModel的sortField參數?我希望DataTable能夠在渲染的第一列進行排序。如何設置Primefaces LazyDataModel默認SortField

@Override 
public List<T> load(int first, int pageSize, String sortField, SortOrder sortOrder, Map<String, String> loadingFilters) { } 

第一次加載sortField爲空。

我的解決辦法是重寫時的SortField爲空:

if(!StringUtils.isBlank(getDefaultSort())) { 
    sortField = getDefaultSort(); 
} 

但有沒有開箱即用的方式是什麼?

回答

1

不幸的是,在看primefaces API後,我覺得對於primefaces的數據表組件的默認排序字段不能設置,所以我已經添加上LazyModel.load方法的一些代碼:

public List<T> load(int first, int pageSize, String sortField, SortOrder sortOrder, Map<String, String> filters) { 

    if(sortField == null) { 
     sortField = "defaultSortField"; 
    } 

}