1
我试图让这样一个会话范围managedbean:JSF不能得到会话范围managedbean另一个managedbean
@ManagedBean
@SessionScoped
@SuppressWarnings("serial")
public class LoginBean implements Serializable{
......
}
@ManagedBean
@SessionScoped
public class MenuBean implements Serializable{
@ManagedProperty(value="#{loginBean}")
private LoginBean login;
public void setLogin(LoginBean login) {
this.login = login;
}
public LoginBean getLogin() {
return login;
}
...
}
但MenuBean使用loginBean总是空,我能是做错了什么?你能帮我吗?
在此先感谢。
问候。
首先确保您从'javax.faces。*'包中导入了范围注释。然后还确认'LoginBean'实际上正在实例化(即没有初始化相关的例外日志等) – kolossus 2014-10-11 03:47:32
您好,是我的导入如下所示:import javax.faces.application.FacesMessage; import javax.faces.bean.ManagedBean; import javax.faces.bean.ManagedProperty; import javax.faces.bean.SessionScoped; import javax.faces.context.ExternalContext; import javax.faces.context.FacesContext; 也尝试在这样的会话中获取bean: FacesContext context = FacesContext.getCurrentInstance(); loginBean login =(LoginBean)context.getApplication()。evaluateExpressionGet(context,“#{loginBean}”,LoginBean.class); 如果我这样做,我可以得到与ManagedProperty的豆我不能Thx 4你的帮助 – Mariah 2014-10-13 14:24:51
在什么时候你想要访问'loginBean'你得到空?不是构造函数是啊? – kolossus 2014-10-13 17:08:33