【发布时间】:2012-04-14 02:48:59
【问题描述】:
我编写了一个 JSF 2 页面,用于可视化来自数据库的数据。
当我将 Primefaces 数据表与 ViewScoped 或 RequestScoped bean 一起使用从数据库中获取值时,它无法正常工作 - 不会排序并且不会分页。例如:
@ManagedBean
@ViewScoped
public class MyBean implements Serializable {
private List<Animal> animals;
public List<Animal> getAnimals() {
if(animals == null) {
animals = DataBaseConnector.getLastAnimals();
}
return animals;
}
}
当我使用 SessionScoped 更改 ViewScoped 时,它运行良好,但我想将它与 RequestScope 和 ViewScope 一起使用。 当我使用相同的 bean 添加静态值时,如下所示:
@ManagedBean
@ViewScoped
public class MyBean implements Serializable {
private List<Animal> animals = new ArrayList<Animal>() {{
add(new Animal("John", 7, new Timestamp(2436343516841235621L)));
add(new Animal("Holly ", 15, new Timestamp(52343332153212142L)));
add(new Animal("Betty", 3, new Timestamp(2346236232151232L)));
}};
public List<Animal> getAnimals() {
return animals;
}
}
它工作正常 - 它排序和分页。 我可以使用 Primefaces 数据表和 RequestScoped bean 从数据库中获取值吗?
【问题讨论】:
-
我在您的代码 sn-ps 之间看到的唯一区别是,在第一个代码中,您从数据库中获取值,而在另一个代码中,您在实例化类时初始化它们。与 bean 的范围无关,因为它在两个样本中是相同的。获取值的方式与 primefaces 无关。
-
我遇到了和你一样的问题,让 primefaces 数据表排序和分页与视图一起工作,你也可以发布你的 html 吗?可能有一些东西导致分页/排序不起作用。您使用的是哪个版本的 PF?
标签: java jsf primefaces