【发布时间】:2015-04-30 14:07:12
【问题描述】:
我有一个 JSF 控制器,像这样命名和 SessionScoped
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
【问题讨论】:
-
JSF 只有一个控制器
FacesServlet。您在应用程序中创建和使用的所有其他托管 bean 本质上都是模型。他们不是控制者。您可以通过将托管 bean 转换为 EJB 来使用这些注释,但毕竟这不是必需的。在 Web 层,页面级的声明式安全性就足够了。
标签: jsf jakarta-ee jsf-2 cdi