`
bhw1015
  • 浏览: 89181 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

Struts2中的Result类型应用

 
阅读更多

Result类型 是在Action执行完,一个结果返回后决定发生什么事的类。开发者可以自由的根据他们的应用和环境的需要创建自己的Result类型。例如在WebWork2中,Servlet和Velocity结果类型已经被创建用来显示web应用程序的画面。

注意: 所有的webwork内建的Result类型都实现了com.opensymphony.xwork.Result接口. 这个接口是所有action执行结果的通用接口,不管这个结果是用来显示一个网页还是产生一个email,发送一个JMS消息,等.

Result类型配置中定义了一些类,把它们映射为action配置中可以引用的名字. 也就是为这些类创建便于记忆的键-值对.

snippet of webwork-default.xml

...
<result-types>     <result-type name="dispatcher" class="com.opensymphony.webwork.dispatcher.ServletDispatcherResult" default="true"/>     <result-type name="redirect" class="com.opensymphony.webwork.dispatcher.ServletRedirectResult"/>     <result-type name="velocity" class="com.opensymphony.webwork.dispatcher.VelocityResult"/>     <result-type name="chain" class="com.opensymphony.xwork.ActionChainResult"/>     <result-type name="xslt" class="com.opensymphony.webwork.views.xslt.XSLTResult"/>     <result-type name="jasper" class="com.opensymphony.webwork.views.jasperreports.JasperReportsResult"/>     <result-type name="freemarker" class="com.opensymphony.webwork.views.freemarker.FreemarkerResult"/>     <result-type name="httpheader" class="com.opensymphony.webwork.dispatcher.HttpHeaderResult"/>     <result-type name="stream" class="com.opensymphony.webwork.dispatcher.StreamResult"/>     <result-type name="plaintext" class="com.opensymphony.webwork.dispatcher.PlainTextResult" /> </result-types>
...

snippet of your xwork.xml


<include file="webwork-default.xml"/> <package name="myPackage" extends="default">   <action name="bar" class="myPackage.barAction">     <!-- default result type is "dispatcher" -->     <!-- default result name is "success" -->     <result>foo.jsp</result>     <result name="error">error.jsp</result>     </result>   </action> </package>

Result类型

Webwork提供了一些com.opensymphony.xwork.Result接口的实现来使你的action可以容易的用户交互.这些Result类型包括:

Result定义在xwork xml配置文件(xwork.xml)中的action标签里。如果location参数是result标签的唯一的参数,你可以这样简化:


<action name="bar" class="myPackage.barAction">   <result name="success" type="dispatcher">     <param name="location">foo.jsp</param>   </result> </action>

或者


<action name="bar" class="myPackage.barAction">   <result name="success" type="dispatcher">foo.jsp</result> </action>

如果你扩展了webwork-default.xml, 那么默认的返回类型是"dispatcher". 同样,如果你没有指定result的名字,默认将是"success". 就是说你可以如下简化:


<action name="bar" class="myPackage.barAction">   <result>foo.jsp</result> </action>

注意 : Parse属性允许的location参数作为表达式.例如你可以这样用:
Struts2中从一个Action跳转到另一个action,必须将type="redirect"


<result name="success" type="redirect">/displayCart.action?userId=${userId}</result>

注意 : 你也可以指定全局Result以便在多个action中使用. 当要为很多不同的action添加相同的结果是这样会节省时间.

分享到:
评论

相关推荐

    Struts2中的Result的使用

    Struts2中的Result的使用类型有很多种,以及各种结果集类型的应用都有涉及(我们老师上课讲的讲义,希望对初学WEB的同学有所帮助)

    Struts2\constant应用

    &lt;!-- 指定Web应用的默认编码集,相当于调用HttpServletRequest的setCharacterEncoding方法 --&gt; &lt;constant name="struts.i18n.encoding" value="UTF-8" /&gt; ...该属性指定Struts 2中的action由哪个容器创建

    Struts2 in action中文版

    6.7.2 Struts 2中常用的表达式语言特性 131 6.7.3 表达式语言的高级特性 135 6.8 小结 137 第7章 UI组件标签 139 7.1 为什么需要UI组件标签 139 7.2 标签、模板和主题 144 7.2.1 标签 146 7.2.2 模板 146 7.2.3 ...

    Struts2属性文件详解

    该属性指定Struts 2应用加载用户自定义的属性文件,该自定义属性文件指定的属性不会覆盖struts.properties文件中指定的属性.如果需要加载多个自定义属性文件,多个自定义属性文件的文件名以英文逗号(,)隔开. struts....

    struts2 详解文档

    第一个Struts 2应用开发 解决Struts 2配置文件无提示问题 Action名称的搜索顺序 Action配置的各项默认值 result配置的各种视图转发类型 为Action属性注入值 指定Struts 2处理的请求后缀 Struts 2的处理...

    深入浅出Struts2(附源码)

    作者处处从实战出发,在丰富的示例中直观地探讨了许多实用的技术,如数据类型转换、文件上传和下载、提高Struts 2应用的安全性、调试与性能分析、FreeMarker、Velocity、Ajax,等等。跟随作者一道深入Struts 2,聆听...

    struts2官方教程

    struts2官方教程,本书是一本从头至尾都使用现实世界例子讲述有关编写Web应用程序的书籍。WebWork所强调的内容是:利用框架实现你的项目,而不是被框架所阻碍。在本书中,我们将从简单的表单及表单处理开始,逐一...

    struts2.0.jar

    Struts 2.0框架中出现的许多特性旨在让Struts更容易使用: · 改进的设计: 与Struts 1相比,...· 易于定制的控制器: Struts 1允许请求处理程序可按照模块来定制,在Struts 2中,需要的话,可以按照动作来定制请求处理

    struts应用5

    ). result 节点的 name、type 属性的具体含义 ...2)、讲授 dispatcher、redirect、redirectAction、chain 等结果类型 3)、讲授 Struts2 的 exception 映射 4)、 讲授 action 配置的通配符 5)、 讲授动态方法调用

    深入浅出Struts 2 .pdf(原书扫描版) part 1

    书中介绍了如何利用Struts 2 来解决Web 应用开发中的常见问题,同时还深入浅出地探讨了许多能帮助程序员编写Struts 2 应用程序的技巧,如管理页面导航活动、输入验证、国际化和本地化、对Ajax 的支持,等等。书中...

    strust2从一个工程跳转到另一个工程的页面

    在Struts2中,跳转到另一个工程的页面是通过Action和Result来实现的。 Action配置 在Struts2中,Action是一个核心概念,它负责处理用户的请求并返回响应。在上面的代码中,我们可以看到Action的配置是通过注解...

    低清版 大型门户网站是这样炼成的.pdf

    2.3.4 struts 2中集成displaytag 83 2.4 struts 2国际化实现 85 2.4.1 web应用的中文本地化 85 2.4.2 struts 2应用的国际化 87 2.4.3 struts 2国际化语言的动态切换 89 2.5 struts 2的校验框架 90 2.5.1 在...

    达内java培训目录

    Struts2 Struts2核心控制流程、Ognl、Action、Interceptor、Result、FreeMarker、Struts2标记库、Struts2扩展、Struts2应用技巧(输入验证、消息国际化、文件上传和下载、防止重复提交等)。 熟练掌握Struts2核心...

    dangdang和smartstruts2.rar

    Struts2、JDBC+连接池(dbcp)、jQuery+Ajax、javamail、log4j、junit、MySQL 系统架构: 表现层:jQuery+Ajax、Struts2标签+OGNL 控制层:Struts2控制器,Action组件 业务层:JavaBean组件、javamail 数据访问层...

    Struts in Action中文版

    2. 深入 STRUTS架构..................................................................................37 2.1. 随便谈谈......................................................................................

    struts in Action

    2. 深入STRUTS 架构..................................................................................37 2.1. 随便谈谈.......................................................................................

Global site tag (gtag.js) - Google Analytics