Struts2:如何在JSP中访问会话变量?
我已经在Action类内的Session对象中设置了ArrayList,如图所示Struts2:如何在JSP中访问会话变量?,struts2,Struts2,我已经在Action类内的Session对象中设置了ArrayList,如图所示 public class HelloWorld implements SessionAware { private Map session; public HelloWorld() { } public String execute() { List list = new ArrayList(); list.add("One");
public class HelloWorld implements SessionAware
{
private Map session;
public HelloWorld() {
}
public String execute() {
List list = new ArrayList();
list.add("One");
list.add("One2");
list.add("One3");
list.add("One4");
list.add("One5");
list.add("One6");
list.add("One7");
session.put("MyList", list);
System.out.println("Hi inside ");
return "SUCCESS";
}
public void setSession(Map session) {
this.session = (Map) session;
}
public Map getSession() {
return (Map) session;
}
}
请告诉我如何访问JSP页面中的会话对象“MyList”
我试过这种方法
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Hello World</title>
</head>
<body>
<%
Map session = ContextAction.getContext().getSession();
%>
</body>
</html>
你好,世界
但我不知道使用ContextAction是否更可取??
请告诉我如何访问JSP中的会话“MyList”我想你指的是ActionContext,而不是ContextAction。不管怎样,都不是这样做的。下面的示例演示如何使用OGNL(标准Struts2方式)和JSTL(标准JSP方式)在列表上迭代。您可以使用任何一种方法 使用OGNL
使用JSTL
以下是有关
标签的更多信息:
<s:iterator value="%{#session.MyList}">
<s:property/>
</s:iterator>
<c:forEach items="${sessionScope.MyList}" var="item">
<c:out value="${item}"/>
</c:forEach>