gpt4 book ai didi

java - JSF 2.0 + PrimeFaces : dataTable page-numeration does not work

转载 作者:行者123 更新时间:2023-11-30 09:46:26 25 4
gpt4 key购买 nike

我在 Tomcat 6.0 和 PrimeFaces 2.2.1 上使用 Mojarra 2.0.3。

我使用带有延迟加载的数据表,它可以正常工作。现在我添加了分页,但表格计算的页数不正确。

<p:dataTable id="tableList" value="#{overview.lazyModel}" rendered="#{!overview.listEmpty}" var="e"
paginator="true" rows="10" lazy="true"
paginatorTemplate="{RowsPerPageDropdown} {FirstPageLink} {PreviousPageLink} {CurrentPageReport} {NextPageLink} {LastPageLink}"
rowsPerPageTemplate="5, 10, 20, 50">

在第一次加载时,有时它不显示任何数据,尽管 bean 正确地发送了它(我打印数据,发送到表,到 Tomcat 控制台)以及表中的数据(页面大小、过滤器、sortMode、 ...) 是正确的。

lazyModel = new LazyDataModel<Bericht>() {
@Override
public List<Bericht> load(int first, int pageSize, String sortField, boolean sortOrder, Map<String,String> filters) {
List<Bericht> lazyBerichte;

lazyBerichte = [...]; // fill data
setRowCount([...]); // set row count

return lazyBerichte;
};
}

我希望这不是 primefaces 中的错误,因为我等不及新版本的发布(项目必须在 3 周内准备就绪)。

有人有想法吗?我尝试了所有方法,但没有任何效果。

来自德国的问候,安迪

最佳答案

好吧,我想你得到一个除以 0 的算术异常,尝试在实例化你的惰性数据模型对象后添加 rowCount 和 pageSize。像

lazyModel = new LazyDataModel<Bericht>() {
@Override
public List<Bericht> load(int first, int pageSize, String sortField, boolean sortOrder, Map<String,String> filters) {
List<Bericht> lazyBerichte;

lazyBerichte = [...]; // fill data
setRowCount([...]); // set row count

return lazyBerichte;
};
lazyModel.setRowCount(totalRowsNumberWithoutFilters); //you should put here the total rows of your table, something like a select * from x or findAll() jpa method
lazyModel.setPageSize(10); //put the rows per page number
}

关于java - JSF 2.0 + PrimeFaces : dataTable page-numeration does not work,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7144220/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com