在struts2-core-2.0.11.2.jar根目录下的struts-default.xml中配置了struts2提供的一系列结果类型
struts2的结果类型实现了com.opensymphony.xwork2.Result接口
type支持的结果类型:
chain:用来处理Action链
chart:整合JFreeChart的结果类型
dispatcher:用来转向页面,通常处理JSP
?freemaker:处理FreeMarker模板
httpheader:控制特殊HTTP行为的结果类型
jasper:用于JasperReports整合的结果类型
jsf:JSF整合的结果类型
redirect:重定向到一个URL
?redirect-action:重定向到一个Action
?stream:向浏览器发送InputSream对象,通常用来处理文件下载,还可用于返回AJAX数据
tiles:与Tiles整合的结果类型
velocity:处理Velocity模板
xslt:处理XML/XLST模板
plaintext:显示原始文件内容,例如文件源代码
dispatcher 结果类型为缺省的result类型,用于返回一个视图资源(如:jsp)
?Xml代码 :
/main.jsp
?/main.jsp
以上写法使用了两个默认,其完整的写法为:
?
? ? ? /maini.jsp
?
?location只能是页面,不能是另一个action(可用type="chain"解决)。
redirect 结果类型用于重定向到一个页面,另一个action或一个网址。
Xml代码:
aaa.jsp
?bbb.action
?www.baidu.com
redirect-action 结果类型使用ActionMapperFactory提供的ActionMapper来重定向请求到另外一个action
?Xml代码:
? ? 重定向的Action名
? ? ? 重定向Action所在的名字空间
?
?redirect和redirect-action两种结果类型在使用上其实并没有什么区别,只是写法不同而已。
chain 用于把相关的几个action连接起来,共同完成一个功能。
Xml代码:
? ? ? step2.action
?
?
?finish.jsp
?
处于chain中的action属于同一个http请求,共享一个ActionContext
? ?
?plaintextj 结果类型用于直接在页面上显示源代码
Xml代码:
? ? 具体的位置
? ? 字符规范(如GBK)
??