【发布时间】:2014-02-21 06:18:22
【问题描述】:
我正在使用 JSF 2.1 和 Primefaces:
我有一个视图范围的托管 bean,它具有一个托管属性和一个方法,可以在其他视图范围的托管 bean 上设置某些内容并转发到引用该托管 bean 的其他页面:
@ManagedBean
@ViewScoped
public class HelloMB {
@ManagedProperty("otherMB")
private OtherMB other;
public String changeOtherMB() {
otherMB.setAnyObject(new Object());
return "otherPage.xhtml";
}
}
@ManagedBean
@ViewScoped
public class OtherMB {
private Object o;
public void setAnyObject(Object o) {
this.o = o;
}
}
所以,在渲染 otherPage 时,o 为 null。
您知道我该如何解决这个问题吗?如何在不使用 @SessionScoped 的情况下将对象保留在 @ViewScoped 托管 bean 中并使其在其他页面上保持活动状态?
【问题讨论】:
标签: jsf parameter-passing managed-bean view-scope