Action处理完用户请求后返回一个字符串,整个字符串就是一个逻辑视图名。
除此之外,struts2还支持多种结果映射,struts2将结果转为实际资源时,不仅可以是JSP视图资源,也可以是FreeMarker视图资源,甚至可以将请求转给下一个Action,形成Action的链式处理。
 
        |--局部    作为<action../>子元素
        |--全局    作为<global-results../>子元素
                        全局结果对所有Action都有效,处理请求时先在局部找,找不到再到全局找
                
    <result../>元素
        name    逻辑视图名(默认为success)
        type      结果类型(默认为dispatcher)
      配置result时如果没有指定location参数,系统会将<result..>...</result>中间的字符串当成实际视图资源
        
 
 
 
Struts2支持结果类型:
默认:dispatcher
struts-default.xml配置文件里的片段:
 <result-type name="dispatcher" class="org.apache.struts2.dispatcher.ServletDispatcherResult" default="true"/>
不算插件所支持的结果类型,struts2内建的支持结果类型有:
    chain,dispatcher,freemarker,httpheader,redirect,redirectAction,stream,velocity,xslt.plainText
 
自定义结果类型需要
        1)提供一个实现com.opensymphony.xwork2.Result的类。
        2)在struts.xml文件中配置该结果类型。
 
动态结果
        在配置result元素时也可以使用表达式语法:
                <action name="crud_*" class="" method="{1}">...
                        <result>WEB-INF/content/{1}.jsp</result>
                   </action>
 
Action属性值决定物理视图资源:除了可以使用${0}表达式形式指定视图资源外,还可以使用${属性名.属性名......}(OGNL表达式)形式:

     <result type="redirect">edit.action?skillName=${currentSkill.name}</result>
    
  
  result元素的type属性为dispatcher 时:
            <param../>元素的name属性可以是    |--location    指定逻辑视图对应的实际视图资源
                                                                       |--parse        是否允许使用OGNL表达式,默认为true
 
    plainText主要用于显示实际资源页面的源码,可指定两个参数:
                |--location    实际视图资源
                |--charset      输出页面事所用字符集
 
    redirect与dispatcher(请求forward转发)结果类型相对,是将请求重定向到指定资源,可指定两个参数:
                |--location    跳转地址
                |--parse        是否允许使用表达式,默认为true
            使用redirect时,不能重定向到WEB-INF下的资源
 
    redirectAction使用ActionMapperFactory提供的ActionMapper来重定向请求,通常用于生成对另一个Action的请求。可以指定两个参数:
                |--actionName    指定重定向的action名
                |--namespace      指定重定向的action所在命名空间
 
 
 

配置处理结果result的更多相关文章

  1. 【Struts2学习笔记(2)】Action默认值和配置Action于result各种转发类型

    一.Action缺省配置值 <span style="font-size:18px;"><package name="itcast" name ...

  2. struts2核心配置之Result

    result作用:在struts.xml中,使用<result>元素配置result逻辑视图和物理视图之间的映射 元素属性 属性 说明 是否必须 name 指定逻辑视图的名称(Action ...

  3. struts2结果(Result)

    一.结果(result)类型 result的type属性默认为dispatcher,其他常见的属性有redirect\chain\redirectAction <action name=&quo ...

  4. 针对不同包之间的action跳转,怎么配置?

    例如一下的例子:两个包,如何跳转 <struts>           <constant name="struts.enable.DynamicMethodInvocat ...

  5. [原创]java WEB学习笔记58:Struts2学习之路---Result 详解 type属性,通配符映射

    本博客的目的:①总结自己的学习过程,相当于学习笔记 ②将自己的经验分享给大家,相互学习,互相交流,不可商用 内容难免出现问题,欢迎指正,交流,探讨,可以留言,也可以通过以下方式联系. 本人互联网技术爱 ...

  6. struts2的 result 通配符 OGNL

    result: 1). result 是 action 节点的子节点 2). result 代表 action 方法执行后, 可能去的一个目的地 3). 一个 action 节点可以配置多个 resu ...

  7. [STL]双层级配置器

    考虑到过多“小型区块”可能造成的内存碎片问题,SGI设计了双层级配置器: 第一级配置器直接调用malloc()和free(): 第二级配置器分两种情况:当配置区块大于128字节时,调用第一级配置器:当 ...

  8. Struts2系列——struts2的result

    在action的指定方法执行完毕后总会返回一个字符串,struts2根据返回的字符串去action的配置中的result去找匹配的名字,根据配置执行下一步的操作. 在ActionSupport基类中定 ...

  9. Struts2之Result详解

    上一篇我们把Struts2中的Action接收参数的内容为大家介绍了,本篇我们就一起来简单学习一下Action的4种Result type类型,分为:dispatcher(服务端页面跳转):redir ...

随机推荐

  1. CodeForces - 269C Flawed Flow

    http://codeforces.com/problemset/problem/269/C 题目大意: 给定一个边没有定向的无法增广的残量网络且1是源点,n是汇点,给定每条边中的流.  让你把所有边 ...

  2. onethink对二维数组结果集进行排序

    <?php /** * 对查询结果集进行排序 * @access public * @param array $list 查询结果 * @param string $field 排序的字段名 * ...

  3. Prof UIS相关

    Prof UIS 一款国外的VC++仿XP系统风格的免费界面库控件,含有近20个应用实例,每一个都可以顺利编译,用它生成的菜单类似OFFICE菜单一样,比起传统的窗体视觉舒服多了,VC编程的朋友对照文 ...

  4. SampleManager(赛默飞)

  5. c#判断输入textbox是否为数字

    asp.net判断输入文字是否是数字 方案一:/**//// <summary> /// 名称:IsNumberic /// 功能:判断输入的是否是数字 /// 参数:string oTe ...

  6. [置顶] sql 向另一个表导数据

    1.如果目的表已经存在: 这两个表结构必须一致 insert into table1 select * from tabel2 2.如果目的表不存在: 这个类似与克隆表 select * into t ...

  7. java多线程之消费者生产者模式 (转)

    /*@author shijin * 生产者与消费者模型中,要保证以下几点: * 1 同一时间内只能有一个生产者生产 生产方法加锁sychronized * 2 同一时间内只能有一个消费者消费 消费方 ...

  8. careercup-数组和字符串1.3

    1.3 给定两个字符串,请编写程序,确定其中一个字符串的字符重新排序后,能否变成另一个字符串. C++实现代码: #include<iostream> #include<map> ...

  9. 注释驱动的 Spring cache 缓存介绍--转载

    概述 Spring 3.1 引入了激动人心的基于注释(annotation)的缓存(cache)技术,它本质上不是一个具体的缓存实现方案(例如 EHCache 或者 OSCache),而是一个对缓存使 ...

  10. Freemarker学习中遇到的问题

    在网上找到了尚学堂的视频,同时有书和源码等资料.但是在跟着练习的过程中,代码运行报了错: 2015-7-20 22:26:40 freemarker.log.JDK14LoggerFactory$JD ...