JSF 控制器忽略@RolesAllowed 注释
JSF Controller ignores @RolesAllowed annotation
我有一个像这样命名和 SessionScoped 的 JSF 控制器
import javax.inject.Named;
import javax.enterprise.context.SessionScoped;
@Named
@SessionScoped
public class SomeController {
...
向控制器添加@RolesAllowed 或@DenyAll 无效。当此控制器调用具有 @RolesAllowed 注释的 EJB 时,它会在这些 bean 调用上正常工作。
我正在使用 jsf 2.2 并将我的应用程序部署到 Wildfy 8.1
这是因为 @RolesAllowed
和 @DenyAll
在 EJB 上处于活动状态,而不是在 CDI 托管 Bean 上。尝试将您的控制器转换为 CDI 会话 bean。
@Named
@SessionScoped
@Stateful
public class SomeController {
...
}
您应该能够在其上添加安全注释,因为您将拥有一个具有 EJB 和 CDI 功能的组件。
我有一个像这样命名和 SessionScoped 的 JSF 控制器
import javax.inject.Named;
import javax.enterprise.context.SessionScoped;
@Named
@SessionScoped
public class SomeController {
...
向控制器添加@RolesAllowed 或@DenyAll 无效。当此控制器调用具有 @RolesAllowed 注释的 EJB 时,它会在这些 bean 调用上正常工作。
我正在使用 jsf 2.2 并将我的应用程序部署到 Wildfy 8.1
这是因为 @RolesAllowed
和 @DenyAll
在 EJB 上处于活动状态,而不是在 CDI 托管 Bean 上。尝试将您的控制器转换为 CDI 会话 bean。
@Named
@SessionScoped
@Stateful
public class SomeController {
...
}
您应该能够在其上添加安全注释,因为您将拥有一个具有 EJB 和 CDI 功能的组件。