0
@SessionScoped
public SessionClass{

    // Buyer is a view scoped class
    private List<Buyer> sessionObject = new ArrayList<Buyer>();
}

更新输入字段buyer.fname 时。该列表也已更新。我是否也应该将购买者类更改为会话范围。

4

1 回答 1

1

这与 JSF 范围无关,而是与 Java 的面向对象特性有关。显然,视图范围Buyer实例表示与会话范围 bean 列表中的项目完全相同的引用(但是,您如何编码它超出了我的范围;如果Buyer它实际上是一个 JPA 实体,那将是可以解释的)。

如果它确实是 JPA 实体,您应该创建Buyer实例的副本或分离实体。

于 2012-11-08T19:43:56.667 回答