`

struts2.xml 中result type属性说明

 
阅读更多

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的名称。

如:

Java代码  收藏代码
  1. <result name= "success"  type= "redirect" >viewTask.action</result>   
  2. <result name="success"  type= "redirect-action" >viewTask</result>  



附:redirect-action 传递参数

Java代码  收藏代码
  1. <action name= "enterpreinfo"   class = "preinfoBusinessAction"     method= "enterPreinfoSub" >    
  2.   <result name="success"  type= "redirect-action" >    
  3.      showpreinfo?preinfo.order_number=${preinfo.order_number}&amp;preinfo.company_name=${preinfo.company_name}     
  4.   </result>    
  5.  <result name="error"  type= "redirect" >    
  6.     <param name="location" >/error.jsp</param>    
  7.  </result>    
  8. </action>  

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

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

json   一般很容易忽略的一个地方(在EXT中非常有用)
示例

Java代码  收藏代码
  1. view plaincopy to clipboardprint?  
  2. <package  name= "struts2"   extends = "json-default"  namespace= "/" >    
  3.         <action name="login"   class = "loginAction"  method= "login" >    
  4.             <result type="json" >    
  5.                 <param name="includeProperties" >success,result</param>                  
  6.             </result>                 
  7.         </action>    
  8.         <action name="main"   class = "loginAction"  method= "main" >    
  9.             <result name="main" >/index.jsp</result>             
  10.         </action>     
  11.     </package >   


Java代码  收藏代码
  1. view plaincopy to clipboardprint?  
  2. private   boolean  success  =  true ;    
  3. private  String result =  "main.action" ;    
  4. //getter和setter方法略     


 
以上的success和result互相对应到了

Java代码  收藏代码
  1. view plaincopy to clipboardprint?  
  2. <param name="includeProperties" >success,result</param>     



struts2会根据其设置的值匹配跳转
对于json一般情况下很少用到,但是在处理ext的时候会用到这个属性类型,这个地方也是经常被忽略的。

 

源自:http://servyo.iteye.com/blog/954110

分享到:
评论

相关推荐

    struts2属性文件struts.xml的配置

    ### Struts2属性文件struts.xml的配置 在Java Web开发中,Struts2框架作为MVC模式的一种实现,提供了一种简洁的方式来构建应用程序。其中,`struts.xml`是Struts2的核心配置文件,用于定义项目的包、常量、拦截器等...

    dom4j解析struts.xml需要的包装类

    在Struts2中,配置文件`struts.xml`扮演着核心角色,它定义了动作(Action)、包(Package)和结果(Result)等关键组件的行为。为了方便地解析和处理这些配置,开发者常常会创建自定义的包装类(Wrapper Class),...

    Dom4j解析struts2框架的struts.xml

    在Struts2中,`struts.xml`是核心配置文件,它定义了应用的各个组件,如动作(Actions)、结果(Results)、拦截器(Interceptors)等。本篇文章将深入探讨如何使用Dom4j这个XML处理库来解析`struts.xml`,以便...

    struts.xml文件详解示例代码

    Struts.xml文件是Apache Struts 2框架的核心配置文件,用于定义应用的MVC(Model-View-Controller)架构和动作映射。它为应用程序提供了一种声明式的方式来配置Struts2的行为,使得开发者能够控制请求如何被处理,...

    struts2 xml

    在Struts2中,XML配置文件(通常命名为struts.xml)是整个框架的基石,它负责设置Action、拦截器、结果页面以及其他关键组件。 **1. 包配置(Package Configuration)** 包在Struts2中扮演着组织和管理的角色,它...

    struts2 使用注解现在零配置不需要在使用struts.xml配置文件,可以直接跑

    在Struts2中,注解的引入使得开发者可以摆脱繁琐的`struts.xml`配置文件,实现“零配置”运行。 首先,让我们了解什么是注解(Annotation)。注解是Java提供的一种元数据机制,允许在源代码中嵌入信息,这些信息...

    Struts2.5版本struts.xml与web.xml配置的更改方法

    在Struts2框架中,配置文件`struts.xml`和`web.xml`是核心部分,它们定义了应用程序的行为和路由规则。随着版本的更新,配置方式也会有所改变。以下是Struts2.5版本中`struts.xml`和`web.xml`配置的更改方法: **1....

    struts2中两种validation.xml的配置方式

    根据所提供的信息,我们可以了解到文章主要探讨了Struts2中两种不同的`validation.xml`配置方式,并且通过一个具体的例子进行了说明。下面将对这两种配置方式进行详细介绍。 ### 一、Struts2框架中的验证机制 ...

    struts.xml详细说明.doc

    Struts2 框架是基于MVC设计模式的一个强大且灵活的Java Web开发框架,它的核心配置文件是`struts.xml`。这个文件用于定义应用程序的行为,包括Action的映射、结果页面的跳转以及拦截器的配置。以下是关于`struts.xml...

    struts-xml.zip

    1. **package**:在Struts2中,package是配置的基本单位,类似于Spring框架中的bean定义。它定义了Action、结果类型、拦截器等的集合,并可以继承其他包的配置。 2. **action**:action元素定义了请求如何映射到...

    struts2的action的几种result type说明

    在Struts2中,Action是业务逻辑的核心组件,而Result是控制流程的关键部分,它定义了Action执行后如何展示结果。Result Type是Result的一种预定义类型,决定了结果如何被处理和展现给用户。在`struts-default.xml`...

    struts2.0中struts.xml配置文件详解

    包是Struts2中用来组织Action、拦截器和其他配置的一种方式。例如: ```xml &lt;package name="com.kay.struts2" extends="struts-default" namespace="/test"&gt; ``` - `name`属性:包的名字。 - `extends`属性:继承...

    struts2.pdf

    2. **路由决策**:核心控制器`FilterDispatcher`根据URL中的Action名和配置文件(struts.xml)中的定义来确定应调用哪个Action。 3. **执行拦截器链**:在调用具体的Action之前,会首先经过一系列的拦截器。这些拦截...

    struts2的struts.xml文件的元素结构

    在Struts2中,`struts.xml`文件是核心配置文件,用于定义应用的行为、动作映射、结果类型、拦截器等。这篇博文主要探讨了`struts.xml`文件的元素结构,下面我们将详细解析这些关键元素。 首先,`struts.xml`文件...

    struts2 result type 介绍

    在Struts2中,Result Type是由`struts-default.xml`配置文件中的`&lt;package&gt;`元素的`defaultResultType`属性指定的,默认情况下,这个值通常是“dispatcher”,意味着Action完成后会使用Dispatcher Result来渲染JSP...

    对Struts 2.0中的struts.xml配置文件详细说明 2

    Struts 2.0是Java Web开发中广泛使用的MVC框架,它的核心在于`struts.xml`配置文件。这个配置文件扮演着应用的中枢角色,负责定义动作(Actions)、结果(Results)、拦截器(Interceptors)等关键组件,以及它们...

    struts.xml配置文件详解

    拦截器是Struts 2中非常重要的一个概念,主要用于处理横切关注点。例如,日志记录、事务管理等都可以通过定义拦截器来实现。 - **name**:拦截器名称。 - **class**:拦截器对应的实现类。 示例代码如下: ```xml ...

    去掉.action去掉.do字样 隐藏struts2 URL地址action, strus1的扩展名do也是同理.zip

    本篇文章将详细介绍如何在Struts2中去除.action后缀,以及Struts1中隐藏.do扩展名,使URL更加简洁。 首先,让我们来看看Struts2的情况。在Struts2中,默认情况下,所有的请求都会映射到.action结尾的URL上。为了...

    struts2中常用Result类型(type)的用法和出现的问题

    Struts2 中常用 Result 类型(type)的用法和出现的问题 Struts2 中的 Result 类型(type)是指在 Struts2 框架中用于确定 action 执行结果的方式。常用的 Result 类型有 dispatcher、redirect 和 chain 三种。这三...

    struts.xml详细配置

    在这个详细的配置中,我们将深入探讨其主要元素、属性以及如何有效利用它们来构建一个功能丰富的Struts2应用。 1. **基本结构**:Struts.xml文件通常位于应用的`src/main/resources`或`WEB-INF/classes`目录下,以...

Global site tag (gtag.js) - Google Analytics