struts2 action跳action传参数,只需要在第二个action中定义相对应的参数和get、set方法,在struts.xml中将<result>里面type的值设置成="chain"即可,如A跳B:

<action name="A" class="com.action.A">
	<!--‘ B’是要跳转的action的name -->
	 <result name="success" type="chain">B</result>
</action>

第一个Action

public class A extends ActionSupport {
	private String message;

	public String getMessage() {
		return message;
	}
	public void setMessage(String message) {
		this.message = message;
	}
	public A() {
		message = "Hello";
	}
	public String execute() throws Exception {
		message += "Word";
		return "updateOk";
	}
}

在第二个Action中我们需要接收来自A的数据message,而所需要做的只是写两个相同的属性名,并添加相应的get、set方法即可。

第二个Action

public class B extends ActionSupport {
	// 设置要接受的参数,并添加对应的get、set方法
	private String message;

	public String getMessage() {
		return message;
	}
	public void setMessage(String message) {
		this.message = message;
	}
	public String execute() throws Exception {
		HttpServletRequest request = ServletActionContext.getRequest();
		// 转发到jsp页面(在页面使用${requestScope.message}显示即可)
		request.setAttribute("message", message);
		return "checkOk";
	}
}

struts.xml中的配置

<!-- 控制器A,其中BBB是要跳转的action的名称-->
<action name="AAA" class="com.zpj.action.A">
	 <result name="updateOk" type="chain">BBB</result>
</action>

<!-- 控制器B -->
<action name="BBB" class="com.zpj.action.B">
	 <result name="checkOk">/show.jsp</result>
</action>