2009-07-28 32 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的一个例子。