当前位置:  开发笔记 > 编程语言 > 正文

如何使用JSF/MyFaces基于用户角色创建条件?

如何解决《如何使用JSF/MyFaces基于用户角色创建条件?》经验,为你挑选了1个好方法。

我有哪些选项可以从JSP页面中读取当前用户的角色?我知道visibleOnUserRole="myRole"Tomahawk组件的属性,但我需要角色来处理比简单可见性更复杂的事情.



1> McDowell..:

该的ExternalContext暴露用户和角色信息.

public class RolesAccess implements Serializable {

    public String getUserPrincipalName() {
        FacesContext context = FacesContext.getCurrentInstance();
        Principal principal = context.getExternalContext().getUserPrincipal();
        if(principal == null) {
            return null;
        }
        return principal.getName();
    }

    public String getUser() {
        FacesContext context = FacesContext.getCurrentInstance();
        return context.getExternalContext().getRemoteUser();
    }

    public boolean isManager() {
        FacesContext context = FacesContext.getCurrentInstance();
        return context.getExternalContext().isUserInRole("manager");
    }

}

如果您在servlet中使用JSF,则此信息将映射到HttpServletRequest公开的值.

您可以使用托管bean通过表达式语言向视图公开值.


    
    
    

推荐阅读
135369一生真爱_890
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有