0
我有一个jsp页面,它为每个人都包含相同的菜单栏,每个用户都有权限,具体取决于他的状态(如果他是管理员或用户..) 我想禁用一些项目菜单栏,如果用户登录是管理员,并启用其他的 我怎么能实现这一点,请建议。 在此先感谢启用或禁用基于用jsp和servlet登录的用户权限的菜单项
我有一个jsp页面,它为每个人都包含相同的菜单栏,每个用户都有权限,具体取决于他的状态(如果他是管理员或用户..) 我想禁用一些项目菜单栏,如果用户登录是管理员,并启用其他的 我怎么能实现这一点,请建议。 在此先感谢启用或禁用基于用jsp和servlet登录的用户权限的菜单项
在会话中设置角色并将其获取到JSP页面中。在servlet中,
session.setAttribute("Role", "administrator");
而且在JSP,
<%
String role= (String)session.getAttribute("Role");
pageContext.setAttribute("role",role);
%>
在这里,我假设你正在使用JSTL标准(刚加入这一行<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
)。
<c:choose>
<c:when test="{role == 'administrator'}">
<!-- Menu Choice 1 -->
</c:when>
<c:otherwise>
<!-- Menu Choice 2 -->
</c:otherwise>
</c:choose>
有关更多详细信息,请参阅BalusC答案。希望这可以帮助。
感谢您的帮助,但结果总是第二个菜单,无论用户登录什么。如果我们假设第一个菜单选择是针对管理员的,并且登录的用户是管理员,我希望启用第一个菜单选项,并显示第二个菜单,但它被禁用 – mimo
您可以发布您的相关JSP和Servlet代码通过编辑你的问题? –
我无法发布代码,它太长了,我对邮件的格式有问题,谢谢你的任何帮助 – mimo