在Java应用程序中,我需要获取EJB3中的登录用户详细信息。
但sessionContext.getCallerPrincipal()。getName()返回匿名值。
我尝试使用JAAS(weblogic.security.auth.login.UsernamePasswordLoginModule),但主题,主体值仍然只能在最初使用,但不会转移到业务层。并且具有匿名价值。
我的环境是Java / JSF / EJB3 / Weblogic 11g。
有什么想法吗?
答案 0 :(得分:0)
我多次遇到这个问题。我将用户放在ThreadLocal上并在业务层中访问它。或者将用户作为方法参数传递。