jsp - 使用Spring MVC的JSP EL中的 session 属性问题

标签 jsp spring-mvc jstl session-variables el

我试图使用JSP EL在jsp页面中显示 session 属性“userSession”,但它返回null(情况1)。但是,请求属性在EL表达式中正确显示。

相反,使用Java scriptlet的行为如情况2和3所示:

  • <c:out value="${userSession}"/>\\返回空
  • <c:out value='<%=request.getSession().getAttribute("userSession")%>'/>\\工作正常-返回 session 属性
  • <c:out value='<%=session.getAttribute("userSession")%>'/>\\抛出异常:找不到变量 session

  • 情况3的异常可能与情况1的问题有关,这类似于由于某种原因无法识别 session 变量,从而影响了EL表达式。

    我正在使用Spring MVC 2.5和JSTL 1.1.2。

    我可以发布其他任何需要澄清的问题。

    最佳答案

    固定的。问题出在我的页面使用的include.jsp中找到了<%@ page session="false" %>指令,该指令已从该全局位置中删除。

    它防止jsp页面访问 session 范围变量。因此,在这种情况下,只有<%=request.getSession().getAttribute("foo")%>可以工作...

    关于jsp - 使用Spring MVC的JSP EL中的 session 属性问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4730790/

    相关文章:

    java - 根据 Spring MVC 中服务的结果验证单个字段

    java - 从项目目录中的文件夹中读取文件

    java - 使用jsp访问列表中的数据

    java - Spring MVC 中无法将有效的 JSON 数组作为请求正文

    java - Cloudfoundry 中的 Spring 应用程序无法读取云属性

    java - 在 JSP EL 枚举值总是空的

    html - 仅用一种形式替换它

    java - JavaScript 中的 JSP 条件表达式

    java - Spring Boot Controller 不返回 html 页面

    javascript - 使用 jQuery 在 DIV 对象中附加 HTML 和 JSTL 代码的问题