在jsp中打印会话属性

use*_*522 19 java spring jsp servlets

我的webapp已准备就绪,但我只是想添加一个用户名为title的下拉菜单.这是我的jsp代码:

                <i class="icon-user"></i> 
                <%
                    session.getAttribute("name");
                %>
                <span class="caret"></span>
Run Code Online (Sandbox Code Playgroud)

它是sais

会话无法解决

9:              <a class="btn dropdown-toggle" data-toggle="dropdown" href="#">
10:                     <i class="icon-user"></i> 
11:                     <%
12:                         session.getAttribute("name");
13:                     %>
14:                     <span class="caret"></span>
15:                 </a>
Run Code Online (Sandbox Code Playgroud)

有一个会话,因为我已登录.

亲切的问候,

Pau*_*Wee 39

您可以使用EL,这是JSP中首选的.

<c:out value="${sessionScope.name}"/>
Run Code Online (Sandbox Code Playgroud)

或者,如果name值是HTML安全的,您可以使用

${sessionScope.name}
Run Code Online (Sandbox Code Playgroud)

确保JSP是允许访问会话.

<%@ page session="true" %>
Run Code Online (Sandbox Code Playgroud)

要使用核心JSTL,请确保包含以下代码.

<%@taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
Run Code Online (Sandbox Code Playgroud)


Kaz*_*ara 6

您可以尝试替代方案:

<% request.getSession().getAttribute("name") %>
Run Code Online (Sandbox Code Playgroud)

session无法解决的原因是您必须session="false"在页面指令中设置.

阅读本文以供进一步参考.