【发布时间】:2015-07-02 14:40:46
【问题描述】:
我需要一个 bean 来使用 JAAS 注入 @Ressource SessionContext ctx。
使用 SessionContext 可以检查ctx.isCallerInRole("ROLE");的用户权限
但是什么是正确的 Bean 声明呢? @静态的? @无状态?和@SessionScope? 我需要为每个用户创建一个实例。
【问题讨论】:
我需要一个 bean 来使用 JAAS 注入 @Ressource SessionContext ctx。
使用 SessionContext 可以检查ctx.isCallerInRole("ROLE");的用户权限
但是什么是正确的 Bean 声明呢? @静态的? @无状态?和@SessionScope? 我需要为每个用户创建一个实例。
【问题讨论】:
我可以使用 SessionContext 检查有关 ctx.isCallerInRole("ROLE") 的用户权限吗?
是的,你可以。
但是什么是正确的 Bean 声明呢? @静态? @无状态?和@SessionScope?
EJB 没有@SessionScope。你可以在@Statful/@Stateless bean 中注入SessionContext。这取决于你需要什么。通常,只要会话存在,用户实例就必须存在。 EJB 没有会话范围的 bean,因此它经常与 CDI(在此处阅读更多信息 CDI + EJB)或其他会话范围的 bean(如 Managed beans)混合使用。
【讨论】: