欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

strust2-result chain

程序员文章站 2022-07-02 13:25:55
...

废话不多说直接上代码先

 

 

public class Test1Action extends ActionSupport{
	
	private String message;
	@Action("test1")
	public String test1()
	{
		System.out.println(message);
		return SUCCESS;
	}
	public String getMessage() {
		return message;
	}
	public void setMessage(String message) {
		this.message = message;
	}	
}

 

 

public class Test2Action extends ActionSupport{
	
	private String message;
	
	@Action(value="test2",results={@Result(type="chain",name="success",location="test1")})
	public String test2()
	{
		message="haha";
		return SUCCESS;
	}

	public String getMessage() {
		return message;
	}

	public void setMessage(String message) {
		this.message = message;
	}
}

 

当直接运行http://localhost:8080/xxxx/test1.action

打印:null

 

当运行http://localhost:8080/xxxx/test2.action

打印:haha

 

官方说明文档:

If you need to copy the properties from your previous Actions in the chain to the current action, you should apply the ChainingInterceptor.

如果你需要在2个action共享参数就可以用这个result类型

如上例子test2.action给message赋值,接着跳转到test1.action。因为result类型是chain,test1.action可以获取在test2.action赋值的message的值

 

 

pom.xml

 

<dependency>
	<groupId>org.apache.struts</groupId>
	<artifactId>struts2-core</artifactId>
	<version>2.2.3</version>
</dependency>
<dependency>
	<groupId>org.apache.struts</groupId>
	<artifactId>struts2-convention-plugin</artifactId>
	<version>2.2.3</version>
</dependency>
<dependency>
        <groupId>javassist</groupId>
	<artifactId>javassist</artifactId>
	<version>3.8.0.GA</version>
</dependency>
 

 

相关标签: strust2 chain