繁体   English   中英

如何根据用户角色在Java中隐藏选项卡

[英]How to hide a tab in java based on the user role

在我的应用程序中,我有三个列表项:文件上载,查看报告和更改密码。 如果登录是由普通用户登录,我需要隐藏“查看报告”,如果登录是由管理员登录,则需要显示“查看报告”。 以下是我标签的代码

母版页中的代码-

<div class="wrapper">
        <div class="menu">
             <div class="menu">
                <ul id="drop-nav">
                    <li id="MenuFileUpload" runat="server"><a href="Upload.jsp">File Upload</a>
                        <ul>
                            <li><a href="ViewUploadedFiles.jsp">View Uploaded Data</a></li>
                        </ul>
                    </li>
                     <li id="MenuReports" runat="server"><a href="Reports.jsp" id="Rpf" runat="server">View Reports</a><ul>
                         <li><a href="Reports1.jsp">Report1</a></li>
                         <li><a href="Reports2.jsp">Reports2</a></li>
                         <li><a href="Report3.jsp">Report3</a></li>
                         </ul>
                     </li>
                         <li id="lichangepwd" runat="server"><a id="A1" href="ChangePassword.jsp" runat="server">Change Password</a></li>
                    <div style="width:auto;float:right;font-weight:bold;padding-right:0cm;">
                        <li id="lilogout"><a href="Logout.jsp"> Logout</a></li></div>
                     <div style="float: left;text-align:right; width: 64%;"> 
                    <asp:Label ID="lblmsg" runat="server" ForeColor="Red" BorderColor="White" Text="Label" Font-Size="Small"></asp:Label> </div>

                </ul>

             </div>

        </div>

登录页面中的代码-

if(role.equals("Supervisor"))
{
reports.visible=false; 
}

我曾尝试过制作report.visible = false; 我们将在.net中执行此操作,但在Java中不起作用

好吧,基本上,您可以将代表登录用户的dto传递到视图中。 在大多数情况下,Dto(数据传输对象)包含(登录名,名字,姓氏和角色)。 然后在代码中执行以下操作:

<c:if test="${loggedUserDto.getRole() eq 'ADMIN'}">
   <li id="MenuReports" runat="server"><a href="Reports.jsp" id="Rpf" runat="server">View Reports</a><ul>
                 ....
   </li>
</c:if>

如果您使用spring安全性:

 <%@ taglib prefix="sec" uri="http://www.springframework.org/security/tags" %>

<sec:authorize access="hasRole('ADMIN')">
    <li ....>
</sec:

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM