action返回值及结果类型介绍

来源:互联网 发布:路由器选择策略及算法 编辑:程序博客网 时间:2024/05/01 17:54

ActionSupport基类中定义的五个标准返回值

  ActionSupport基类中定义了五个标准的返回值,当然我们可以自己随意定义返回的名字

  String SUCCESS = "success"; //默认是 SUCCESS 类型

  String NONE = "none";

  String ERROR = "error";

  String INPUT = "input";

  String LOGIN = "login";

ActionSupport基类中的方法

  ActionSupport基类定义了了一些方法,程序员自己写的action如果继承了ActionSupport基类,就可以应用这些方法,很方便解决一些问题。

  一些比较常用的方法:

  getText(String aTextName);//国际化用到

  ...//getText(String aTextName)的重载方法

  addActionMessage(String aMessage);

  addFieldError(String fieldName, String errorMessage);

  //校验失败后返回给客户端的信息,struts2 标签<s:fielderror />可以取得

  addActionError(String anErrorMessage);

Result Type

  在默认时,<result>标签的type属性值是“dispatcher”(实际上就是转发,forward)。开发人员可以根据自己的需要指定不同的类型,如redirect、stream等。如下面代码所示:

  <result name="save" type="redirect">

  /result.jsp

  </result>

  这此result-type可以在struts2-core-2.0.11.1.jar包或struts2源代码中的struts-default.xml文件中找到,在这个文件中找到<result-types>标签,所有的result-type都在里面定义了。代码如下:

  <result-types>

  <result-type name="chain"class="com.opensymphony.xwork2.ActionChainResult"/>

  <result-type name="dispatcher"class="org.apache.struts2.dispatcher.ServletDispatcherResult"default="true"/>

  <result-type name="freemarker"class="org.apache.struts2.views.freemarker.FreemarkerResult"/>

  <result-type name="httpheader"class="org.apache.struts2.dispatcher.HttpHeaderResult"/>

  <result-type name="redirect"class="org.apache.struts2.dispatcher.ServletRedirectResult"/>

  <result-type name="redirectAction"class="org.apache.struts2.dispatcher.ServletActionRedirectResult"/>

  <result-type name="stream"class="org.apache.struts2.dispatcher.StreamResult"/>

  <result-type name="velocity"class="org.apache.struts2.dispatcher.VelocityResult"/>

  <result-type name="xslt"class="org.apache.struts2.views.xslt.XSLTResult"/>

  <result-type name="plainText"class="org.apache.struts2.dispatcher.PlainTextResult" />

  <!-- Deprecated name form scheduled for removal in Struts 2.1.0.The camelCase versions are preferred. See ww-1707 -->

  <result-type name="redirect-action"class="org.apache.struts2.dispatcher.ServletActionRedirectResult"/>

  <result-type name="plaintext"class="org.apache.struts2.dispatcher.PlainTextResult" />

  </result-types>

  chain

  用来处理Action

  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

  redirect

  重定向到一个URL

  org.apache.struts2.dispatcher.ServletRedirectResult

  redirectAction

  重定向到一个Action

  org.apache.struts2.dispatcher.ServletActionRedirectResult

  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

  redirect-action

  重定向到一个Action

  org.apache.struts2.dispatcher.ServletActionRedirectResult

  

 

原文地址:http://hi.baidu.com/xcgdaisy/blog/item/f6c05a09d893caa2d0581b62.html

 


原创粉丝点击