2
这是我支持bean(部署到GlassFish):如何获得我的支持bean中的调用者主体?
@ManagedBean
@DeclareRoles({ "USER" })
@RolesAllowed("USER")
public class MyBean {
public MyBean() {}
public final String getId() {
Principal p = .. // how and where?
return p.getName();
}
}
如何以及在哪里我可以得到java.security.Principal
对象了解是谁登录了吗?
我得到这个代码的空指针例外。这是为什么? – victorio 2013-11-04 16:38:11
@victorio:异常的所有可能原因通常已经列在异常自己的javadoc中:http://docs.oracle.com/javase/7/docs/api/java/lang/NullPointerException.html其中,当您尝试在'null'引用上调用一个实例方法。如果你仍然卡住,只需按“提问”并发布一个好的SSCCE。我最好的猜测是你试图在错误的时刻抓住'FacesContext'(即,当它还没有被创建时),就像在一个servlet过滤器中一样。 – BalusC 2013-11-04 16:39:33
谢谢你:http://stackoverflow.com/questions/19772780/why-does-my-facescontext-getcurrentinstance-getexternalcontext-getuserprinci – victorio 2013-11-04 16:52:12