我在 Glassfish 3.1.2 中使用带有用户名、密码和领域的 ProgrammaticLogin,它运行良好。无论如何,当我调用 context.getCallerPrincipal() 时,我得到 org.glassfish.security.common.PrincipalImpl 和 context.getCallerPrincipal().getName() ,它返回用户名。
有什么方法可以通过 ProgrammaticLogin 传递 Principle,因此它可以在我的 ejb 中传递并从 SessionContext - context.getCallerPrincipal() 中获得?