sessionで保持しているBean情報の取り出し方
public Object getManagedBean(String beanName) { FacesContext context = FacesContext.getCurrentInstance(); Object object = context.getApplication().getVariableResolver().resolveVariable(context, beanName); return object; }
これでreturnされているobjectはBean自体なので注意。
明示してないのにBeanの中のドレを参照してるんだーとゆーマヌケなハマりかたをしてましたorz
beanNameはfaces-config.xmlで設定した名前を入れる。
あとは必要になったところで
LoginBean login = (LoginBean)getManagedBean("loginBean"); user = login.getUser();
みたいに使えばOK!