struts2的result跳转类型
1. Struts2支持的不同类型的返回结果为: 名字 说明 Chain Result 用来处理Action链
Dispatcher Result 用来转向页面,通常处理JSP
FreeMarker Result 处理FreeMarker模板
HttpHeader Result 用来控制特殊的Http行为
Redirect Result 重定向到一个URL
Redirect Action Result 重定向到一个Action
Stream Result 向浏览器发送InputSream对象,通常用来处理文件下载
Velocity Result 处理Velocity模板
XLS Result 处理XML/XLST模板
PlainText Result 显示原始文件内容,例如文件源代码
S2PLUGINS:Tiles Result 结合Tile使用
2.struts.xml
<?xml version=”1.0″ encoding=”UTF-8″ ?> <!DOCTYPE struts PUBLIC “-//Apache Software Foundation//DTD Struts Configuration 2.3//EN” “http://struts.apache.org/dtds/struts-2.3.dtd“>
<struts>
<constant name=”struts.enable.DynamicMethodInvocation” value=”false” /> <constant name=”struts.devMode” value=”true” /> <constant name=”struts.i18n.encoding” value=”UTF-8″></constant> <package name=”default” namespace=”/” extends=”struts-default”> <default-action-ref name=”default”></default-action-ref> <action name=”default” > <result name=”ok” type=”dispatcher”> /WEB-INF/jsp/ok.jsp </result> </action> <!– dispatcher转发,web服务器完成跳转 –> <action name=”r1″ > <result name=”ok” type=”dispatcher”> /WEB-INF/jsp/r1.jsp </result> </action> <!– redirect重定向由浏览器完成–> <action name=”r2″ > <result name=”ok” type=”redirect”> /r2.jsp </result> </action> <!– chain 用于把相关的几个action连接起来,共同完成一个功能。 –> <action name=”r3″ > <result name=”ok” type=”chain”> r1 </result> </action> <!– redirectAction 结果类型使用ActionMapperFactory提供的ActionMapper来重定向请求到另外一个action –> <action name=”r4″ > <result name=”ok” type=”redirectAction”> <param name=”namespace”>/</param> <param name=”actionName”>r1</param> </result> </action> </package> </struts>
二.global-results全局result
1、extends是继承package <package name=”globalresults” namespace=”/” extends=”struts-default”> <global-results> <result name=”global“>/WEB-INF/jsp/error.jsp</result> </global-results> </package> <package name=”test” namespace=”/” extends=”globalresults”> <action name=”test” > <result name=”ok”> /WEB-INF/jsp/ok.jsp </result> </action> </package>
2.使用全局result
public class IncludeModel extends ActionSupport { @Override public String execute() throws Exception { // TODO Auto-generated method stub return “global“; } }
访问:http://localhost:8080/struts2_2/test但是test.action中result不是”global”,所以使用global-results