当前位置: 首页 > 知识库问答 >
问题:

如何使用JSTL确定空会话属性

田俊爽
2023-03-14

我设置了一个会话,根据每个用户的角色控制菜单...例如,我有这个

<c:set var="role" scope="session" value='<%=((Long) session.getAttribute("role")).longValue()%>' />
<c:if test="${role == 121}">
        <div id="menu">
            <span class="menu-header">Registration</span>
            <ul>
                <li><a href="${pageContext.request.contextPath}/registration/organization-registry">Organization Registry</a></li>


            </ul>
        </div>
    </c:if>

<div id="menu">
                <span class="menu-header">Directory</span>
                <ul>
                    <li><a href="">Organization</a></li>


                </ul>
            </div>

现在,如果我想不登录就进入该页面呢?我试图在不登录的情况下进入该页面,但基本上遇到了nullpointetexception,因为我没有在角色中存储任何会话。我在用户登录时设置每个会话。不登录时,我想查看不需要任何角色的菜单。。。例如,我重定向到该页面,其中一个链接可以被其他人查看。

当我没有登录时,我如何仍然查看目录菜单?

共有1个答案

谷梁子昂
2023-03-14

摆脱

记住:你永远不应该混合使用老式的脚本

  • 我们的EL wiki页面

 类似资料:
  • 你能帮我编写此代码的Spring mvc风格模拟吗? 如何向会话添加由注释注释的元素,然后访问它?

  • servlet 可以按名称绑定对象属性到 HttpSession 实现,任何绑定到会话的对象可用于任意其他的 servlet,其属于同一个 ServletContext 且处理属于相同会话中的请求。 一些对象可能需要在它们被放进会话或从会话中移除时得到通知。这些信息可以从 HttpSessionBindingListener 接口实现的对象中获取。这个接口定义了以下方法,用于标识一个对象被绑定到会

  • 问题内容: Singleton无法自动装配SessionBean,而ScopedProxy可以。 假设在同一应用程序中同时有100个用户有一个有效的会话,那么ScopedProxy如何确定会话的含义? 我认为ScopedProxy不会选择任何随机会话,我认为这是无稽之谈。 ScopedProxy如何决定要使用的会话? 如果0个用户拥有一个会话该怎么办?会发生吗? @Async是不同于调用Reque

  • 我正在使用NSURL会话从HTTP服务器请求JSON资源。服务器使用Cache-Control来限制资源在客户端上缓存的时间。 这效果很好,但我也想在内存中缓存反序列化的JSON对象,因为它经常被访问,同时继续利用NSURLSESION中内置的HTTP缓存机制。 我想我可以保存几个HTTP响应头:、以及反序列化的JSON对象(我之所以使用这三个字段,是因为我注意到并非所有HTTP服务器都返回 .否

  • 下面是使用的示例。向导完成后,如何清除用户会话属性?在我的示例中,在返回到之后会话属性仍然存在。我尝试了和,但它不起作用。 我的错误<代码>状态。setComplete() 工作正常<代码>会话。removeAttribute(“用户”)在这里不需要做什么。

  • 我有一个运行在Tomcat5上的非常好用的web Java1.5web应用程序。应用程序依赖于它的会话,所以只要会话Cookie被传递出去,或者JSESSIONID出现在上下文路径的末尾,就可以正常工作,就像“;JSESSIONID=...” null