仅包含登录用户的header.jsp

时间:2012-07-23 08:41:34

标签: jsp header include

我有index.jsp,我需要在其中包含header.jsp。问题是 - header.jsp包含动态菜单(对于loggedIn用户和非登录用户)我可以检查用户是否已登录或未使用index.jsp中的会话。但不在header.jsp

如何在这种情况下包含标题?

我可以在header.jsp中访问会话对象吗?

2 个答案:

答案 0 :(得分:1)

header.jsp中添加条件语句。 (假设您的会话密钥名为islogged,代表状态是否记录了用户)

<c:choose>
 <c:when test="${not empty islogged}">
   //html markup for logged user
 </c:when>
 <c:otherwise>
  //html markup for not logged user
 </c:otherwise>
</c:choose>

编辑:

@我没有维护任何会话密钥..但我想...我该怎么做?

创建servlet,在doPost()方法中比较用户名和密码,如果用户已验证,则设置会话密钥值。

您可以通过查看filter中的会话密钥值来验证用户(无论他/她是否已登录)。

答案 1 :(得分:0)

您可以将表达式放入头文件中,以检查您是否已登录。 例如。

<%
    if(user.session != null)
    {
      //includeFile here 
%>
      <jsp:include file="header.jsp" />
<%
    }
%>