【发布时间】:2011-08-07 15:10:59
【问题描述】:
我有一个关于jsf 2.0 managedbeans 的问题。问题是,我在我的 managedbean 中创建了两个对象,当我设置其中一个对象的数据时,其他对象发生了变化。以下代码显示了问题,
@ManagedBean(name = "mainn")
@ViewScoped
public class Mainn {
private AyniAndaDoğrusalIkiliHareket one = new AyniAndaDoğrusalIkiliHareket();
private AyniAndaDoğrusalIkiliHareket two = new AyniAndaDoğrusalIkiliHareket();
public void Hesapla() {
one.setX2(5);
System.out.println(two.getX2()); // printf 5 the value of "one"
}
}
我该如何解决?
【问题讨论】:
-
您不应该将
new用于托管属性,并且当您获得two.getX2()时,您可能将x2的默认值设置为5 -
不,x2 没有任何默认值。我为“一”设置的值我为“二”得到相同的值。
-
这是完整的代码还是你已经从这个类中删除了一些东西?
-
您的
x2成员是否在AyniAndaDoğrusalIkiliHareket中声明为静态?
标签: java jsf jsf-2 managed-bean