您的位置:首页 > 编程语言 > Java开发

struts2 Result类型和对应的用法

2014-05-11 11:40 483 查看

5个Return值用法

String 里面有5个static 
常量分别是:ERROR  INPUT LOGIN NONE SUCCESS
例如 如果在excute 中返回的是 ruturn SUCCESS;
也就相当于返回的是return "success"
字符串就必须在struts.xml中写上对应的"success"<result name="success">/x.jsp</result>
当然EORROR 对应的就是"error";
字符串当然INPUT 对应的就是"input";
字符串当然LOGIN 对应的就是"login";
字符串当然NONE 对应的就是"none";字符串

在struts中,action中的result为空时, 会怎么样?? 如:<result></result>

当在action中返回的return none时,那在配置文件里面就不许要写这个result 

否则会报错Invalid result location value/parameter  

在myeclipse8.6一下的版本不会出现,但是在myeclipse9.0中就会出现该错误。

struts2 Result类型(跳转)

Result 类型
 Action 中表示跳转的目的地使用了在 struts.xml 配置的字符串, 格式为: <result name=”” type=””></result>,type 可以有多种选择,Struts2 支持各种视图技术,例如 JSP、JSF、XML 等,默认的是 JSP。
常见的 type 类型配置如下:


dispatcher
转发到 JSP 页面,和<jsp:forward page=””/>的效果一样,是默认类型。 
<result>/Success.jsp</result> 
<result name=”a”>/Success.jsp</result> 
<result name=”b” type=”dispatcher”>/Success.jsp</result> 


redirect
重定向到 JSP 页面,和 response.sendRedirect(“”)的效果一样。 
<result name=”a” type=”redirect”>/Success.jsp</result>


 redirect-action
 重定向到 action,目的地为 Action,配置时可以指定如下两个参数:actionName-重定向 的 Action 名;namespace-重定向的 Action 所在的命名空间。
 <result name=”a” type=”redirect-action”> 
<param name=”actionName”>myaction</param> 
<param name=”namespace”>/test</param>
 </result> 


 chain
转发到 action,形成 action-chain,可以指定两个参数:actionName-重定向的
Action 名; namespace-重定向的 Action 所在的命名空间。
 <result
type=”chain”> 
<param name=”actionName”>myaction</param> 
<param name=”namespace”>/test</param> 
</result>


stream 
用于向页面返回一个 InputStream,原始数据直接传递给 HttpServletResponse,这种结果 类型在用户下载文件(例如 PDF 文件等)等情况下非常有意义。 
<result name=”success” type=”stream”> 
<param name=”contentType”>image/jpg</param> 
<param name=”inputName”>imageStream</param> 
<param name=”contentDisposition”>filename=”document.pdf”</param> 
<param name=”buffersize”>1024</param>
 </result> 


plaintext 
用于输出目的地 JSP/HTML 的源代码内容,可以指定两个参数:location-目的地 JSP/HTML,charSet-输出内容时使用的字符集。 
<result name="success" type="plaintext"> 
<param name="location">/Success.jsp</param>
 <param name="charset">utf-8</param> 

</result>
除了上述类型以外,还支持如下的类型:
chart:用于整合 JFreeChart 的 result 类型;
 freemarker:用于整合 FreeMarker 的 result 类型; 
httpheader:用于处理特殊 http 行为的 result 类型; 
jasper:用于整合 JasperReport 的 result 类型; jsf:用于整合 JSF 的 result 类型; 
titles:用于整合 Titles 的 result 类型; 
velocity:用于整合 Velocity 的 result 类型; 
xslt:用于整合 XML/XSLT 的 result 类型。

 这些视图技术的支持,有些还需要导入相应的插件包,即 Struts2 提供的含有 plugin 字 样的 jar 包。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: