action public class test4 extends ActionSupport { private Vector v ; public List getV() { return v; } public void setV(Vector v) { this.v = v; } public String execute() {
v = new Vector(); user u1 = new user();user u2 = new user();user u3 = new user();user u4 = new user(); u1.setName("h1");u2.setName("h2");u3.setName("h3");u4.setName("h4"); v.add(u1);v.add(u2);v.add(u3);v.add(u4);ServletActionContext.getRequest().setAttribute("testV", v);
<s:action name="actionName" namespace="nameSpace" id="someId" executeResult="false"/>executeResult设成false(默认也是false),action执行后会存放在actionContext中,可以用property标签取
<s:property value="#someId.yourActionProperty" />
<body>
<s:action name="actionName" namespace="nameSpace" executeResult="false"/>
<s:iterator value="#request.PubInfoList">
</s:iterator>
</body>
</html>
public class test4 extends ActionSupport { private Vector v ;
public List getV() {
return v;
}
public void setV(Vector v) {
this.v = v;
}
public String execute() {
v = new Vector();
user u1 = new user();user u2 = new user();user u3 = new user();user u4 = new user();
u1.setName("h1");u2.setName("h2");u3.setName("h3");u4.setName("h4");
v.add(u1);v.add(u2);v.add(u3);v.add(u4);ServletActionContext.getRequest().setAttribute("testV", v);
return SUCCESS;
}
struts.xml <action name="test4" class="tutorial.test4">
</action>
jsp<s:action name="test4" executeResult="false">
<s:iterator value="#request.testV">
<p>name is: <s:property value="name"/></p> </s:iterator>
</s:action>
<s:action name="test4" executeResult="false"></s:action>
<s:iterator value="#request.testV">
<p>name is: <s:property value="name"/> </p>
</s:iterator>
ServletActionContext.getRequest().setAttribute("testV", v);
JSP应该这么写<s:action name="test4" executeResult="false" id="myAction"/>
<s:iterator value="#myAction.v">
<p>name is: <s:property value="name"/> </p>
</s:iterator>