struts2.xml 中result type属性说明

来源:互联网 发布:linux如何访问usb 编辑:程序博客网 时间:2024/06/10 09:35

转载自:http://blog.chinaunix.net/uid-26794021-id-3258322.html

chain 

用来处理Action链,被跳转的action中仍能获取上个页面的值,如request信息。 

com.opensymphony.xwork2.ActionChainResult 

dispatcher 

用来转向页面,通常处理JSP 

org.apache.struts2.dispatcher.ServletDispatcherResult 

freemaker 

处理FreeMarker模板 

org.apache.struts2.views.freemarker.FreemarkerResult 

httpheader 

控制特殊HTTP行为的结果类型 

org.apache.struts2.dispatcher.HttpHeaderResult 


stream 

向浏览器发送InputSream对象,通常用来处理文件下载,还可用于返回AJAX数据 

org.apache.struts2.dispatcher.StreamResult 

velocity 

处理Velocity模板 

org.apache.struts2.dispatcher.VelocityResult 

xslt 

处理XML/XLST模板 

org.apache.struts2.views.xslt.XSLTResult 

plainText 

显示原始文件内容,例如文件源代码 

org.apache.struts2.dispatcher.PlainTextResult 


plaintext 

显示原始文件内容,例如文件源代码 

org.apache.struts2.dispatcher.PlainTextResult 

redirect 

重定向到一个URL ,被跳转的页面中丢失传递的信息,如request 

org.apache.struts2.dispatcher.ServletRedirectResult 

redirectAction 

重定向到一个Action ,跳转的页面中丢失传递的信息,如request 

org.apache.struts2.dispatcher.ServletActionRedirectResult 

redirect-action 

重定向到一个Action ,跳转的页面中丢失传递的信息,如request 

org.apache.struts2.dispatcher.ServletActionRedirectResult 


注:redirect与redirect-action区别

一、使用redirect需要后缀名 使用redirect-action不需要后缀名 
二、type="redirect" 的值可以转到其它命名空间下的action,而redirect-action只能转到同一命名空下的 action,因此它可以省略.action的后缀直接写action的名称。

如:

viewTask.action 
viewTask

附:redirect-action 传递参数
Xml代码 


showpreinfo?preinfo.order_number=${preinfo.order_number}&preinfo.company_name=${preinfo.company_name} 


/error.jsp 



因为使用了redirect-action,所以要注意不能将showpreinf?preinfo.order_number=${preinfo.order_number}写成showpreinf.action?preinfo.order_number=${preinfo.order_number}

其中${}为EL表达式,获取action:enterpreinfo中属性的值;在这个配置文件里,多个参数的连接符使用了"&",但XML的语法规范,应该使用"&"代替"&",原理和HTML中的转义相同,开始没有注意,在struts分析配置文件时,总是报出这样的错误:
Java代码 
The reference to entity "preinfo" must end with the ';' delimiter.

0 0