如何使用struts2在jsp中检索会话值?

时间:2017-03-29 10:05:33

标签: jsp session struts2

我想使用struts2在jsp中将会话值存储在String对象中。

文件: header.jsp

<%
name = (String)session.getAttribute("name");    
/* name = (String)request.getSession().getAttribute("name"); */
if(name.equals("cmp")
{  // show something   }
else if(name.equals("emp")
{  // show something   }
else
{  // show something   }
%>

当我尝试使用此语法获取会话值时,我收到错误:HTTP Status 500 - java.lang.NullPointerException

文件: loginAction.java

public class LoginAction extends ActionSupport implements SessionAware
{
    private Map<String, Object> session;
    private String name;
    //setters and getters
    public String execute()
    {
        session.put("name", name);
        return SUCCESS;
    }
}

我根据用户在登录页面输入名称设置名称值。

根据用户类型,我更改标题视图。

那么建议我如何从jsp中的会话中获取值,然后存储到String对象中。

1 个答案:

答案 0 :(得分:1)

文件: header.jsp

<s:if test="#session.role=='cmp'">
    // show something
<s:if>
<s:elseif test="#session.role=='emp'">
    // show something
<s:elseif>
<s:else>
    // show something
<s:else>