从会话获取JSF托管bean

从会话获取JSF托管bean,jsf,session,javabeans,managed,Jsf,Session,Javabeans,Managed,我有一个会话范围的托管bean,需要从另一个会话托管bean设置它,为此,我执行以下操作 RWIRManagedBean managedBean = new RWIRManagedBean(); managedBean.setRequest(req); managedBean.setDisplayAppDetailsMode(new Boolean(true)); FacesContext.getCurrentInstance().getExternalContext().getSessionM

我有一个会话范围的托管bean,需要从另一个会话托管bean设置它,为此,我执行以下操作

RWIRManagedBean managedBean = new RWIRManagedBean();
managedBean.setRequest(req);
managedBean.setDisplayAppDetailsMode(new Boolean(true));
FacesContext.getCurrentInstance().getExternalContext().getSessionMap()
.put("RWIRManagedBean", managedBean);
pageId = ((DoBRServiceViewObj)getConfigMap().
get(ConstantsManager.WebConstants.RWIR_SERVICE_ID)).getServicePageID();
// page id is a jsf page, the belwo is the redirect code
EngineURL engineURL = getRedirectURL(FacesContext.getCurrentInstance(). 
                      getExternalContext(),pageId,FacesContext.
                      getCurrentInstance().getViewRoot().getLocale().getLanguage());
FacesContext.getCurrentInstance().getExternalContext().redirect(engineURL.toString());
但是当我调用与这个托管bean相关联的JSF页面时,看起来好像创建了一个新的托管bean,而我创建的那个不存在。
我的问题是,JSF生命周期应该在评估JSF页面时从会话中获取托管bean,但在我的例子中,为什么它会创建一个新的托管bean呢?有什么帮助吗

RWIRManagedBean的范围是什么?您是使用JSF1.x还是2.x?还记得将你的问题标记为已回答。你所有的答案都没有标记,这根本不鼓励人们回答你的新答案。