2009-07-28 54 views
1

我使用rich:dataTablerich:dataTableScroller。我不想在初始化表格時從數據庫加載所有數據,因爲我有很多記錄。我希望那rich:dataTableScroller顯示我真正的頁數,但只有當我打開時加載頁面。我找到一些解決方案here 但我想用rich:dataTablerich:dataTableScroller,而不寫我自己的組件。有人有一些想法?用惰性數據加載rich:dataTable和rich:dataTableScroller

回答

2

你應該創建一個自定義org.richfaces.model.DataProvider,並在getItemsByRange你應該獲取的數據有限。 然後您應該構建一個ExtendedTableDataModel通過自定義DataProvider,並在使用這個模型的<rich:dataTable> - value="#{myBean.myExtendedDataModel}"

-1

你可以寫你自己的數據模型作爲RichFaces的ExtendedDataModel的孩子,其中有方法:

protected List<T> loadData(int offset, int limit, List<Order> orders)

+0

沒有這樣的方法 – Bozho 2009-12-01 14:15:44

0

您可以創建自己的「PagedDataModel」,這實際上只返回將您所看到的頁面中給出的數據。

我找到了這個here的一個例子。