@ManagedProperty由于
@ManagedBean只能在类中使用,因此无法在servlet中使用。此外,也不可能注入范围小于父对象本身的对象,因为这只会导致并发问题。注入程序将为此抛出运行时异常。servlet本质上是应用程序范围内的,并在所有用户之间共享,并且您的
UserIdentitybean似乎是会话范围的。
由于JSF在Servlet API之上运行并将会话范围的bean存储在会话中,因此您可以在servlet中将其作为会话属性来获取:
UserIdentity identity = (UserIdentity) request.getSession().getAttribute("userIdentity");
请注意,
FacesContext除了之外
FacesServlet,通常在servlet中也无法使用,因此
FacesContext按注释中的建议在servlet中使用没有任何意义,只会返回
null。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)