`
liyixing1
  • 浏览: 958706 次
  • 性别: Icon_minigender_1
  • 来自: 江西上饶
社区版块
存档分类
最新评论

处理结果(result)和默认action

阅读更多
默认action,在package元素内部添加<default-action-ref name="">
,那么package 对应的namespace下面,如果没找到action,就会自动跑到这个元素设置的action处理。

处理结果:result
有两种
1.局部的,在<action>元素下面配置result
2.全局的,在<global-results>元素下面配置result元素

局部:
<result name="" type="">
type属性的默认值是dispatcher
  <param name="location">/xxx/xxx.ftl</param>
<param name="parse">true</param>
  param的name属性可以是:
  location,指定视图对应的资源路径
  parse指定是否允许在实际视图名字中使用ognl表达式,默认是true。如果是false,视图将无法使用表达式。
</result>

简化
<result name="">这里直接写实际视图路径</result>

webwork支持多种视图技术,jsp,velocity和freemarker等。

action仅仅返回一个字符串表示将以那个result作为视图,和使用神马视图技术无关。而是根据xwork.xml的配置来使用对应的视图技术.
webwork-default.xml有如下类似配置
<result-types>
  <result-type name="name就是我们写action的result对应的type属性" class="" />
</result-types>
如果result-type的元素中配置default=true,表示默认的类型。

处理结果类型是通过实现com.opensymphony.xwork.Result接口。默认支持的有
chain,action链式处理结果类型。
dispather,用于与jsp整合的结果类型
freemarker,用于与freemarker整合
httpheader,用于处理特殊http行为结果
redirect,跳转
redirect-action,跳转到另一个action
actionName参数,用于指定action名字
namespace,用于指定action所在命名空间。
stream,用于像浏览器返回一个InputStream,是交由用的一个feature。如使用在验证码,各种报表,图片生成。在ction定义一个InputStream类型。在result元素中需要设置对应的输出流

<result type="stream">
  头信息,设置内容类型
  <param name="contentType">image/jpeg</param>
  设置输入流
  <param name="inputName">icoFile</param>
  设置缓存大小
  <param name="bufferSize">1024</param>
</result>
xslt,用于整合XML/XSLT结果
velocity,用于整合velocity模版技术
plaintext,用于显示某个页面原始代码的结果类型,将文件源代码输出(整个文件的内容都会被输出,而表达式,标签之类的也也被输出)。可以在result中配置<param name="charSet">utf-8</param>来设置编码。


动态结果
配置result时,可以使用表达式语言,${属性名}来动态设置。还可以使用OGNL,${属性名.属性名.属性名}

全局结果如
<package name="myaction" extends="webwork-default">
<default-action-ref name="myaction" />
<global-results>
<result name="xxx">MyJsp.jsp</result>
</global-results>

<action name="*action" class="action.MyAction" method="{0}">
<result>MyJsp.jsp</result>
</action>
</package>
另外,action级别的result,如果和全局同名,action的会覆盖全局的。
分享到:
评论

相关推荐

    jsp\No result defined for action and result input.doc

    ### Struts2框架中“No result defined for action and result input”错误解析及解决方法 #### 错误概述 在Struts2框架中开发Web应用程序时,可能会遇到一个名为“No result defined for action and result input...

    struts2 result转向到action

    - **`redirect-action`**: 相对于 `redirect`,`redirect-action` 类型的 Result 只能用于重定向到当前应用中的另一个 Action,并且默认情况下只能在同一命名空间内跳转。这种方式不会改变浏览器地址栏中的 URL,...

    struts2笔记之动态调用Action指定方法及默认Action

    Struts2 动态调用 Action 指定方法及默认 Action 配置 Struts2 框架中,一个 Action 可以包含多个处理逻辑,而不是只有一个 execute...此外,我们还可以配置默认的 Action 和全局结果,以便更好地管理我们的应用程序。

    struts2的action的几种result type说明

    Result Type是Result的一种预定义类型,决定了结果如何被处理和展现给用户。在`struts-default.xml`配置文件中,我们可以看到Struts2支持多种内置的Result Type。 1. **dispatcher** (默认): 这是最常见的Result ...

    struts2一个action处理多个请求 struts2实例

    这里,`myAction`将处理以`myAction`开头的请求,如`myAction.action`,而`success`和`error`是不同的请求结果,根据业务逻辑决定跳转到哪个页面。 2. **使用通配符映射** Struts2支持使用通配符来映射多个请求。...

    Struts2 result和type

    它们主要用于控制Action执行完毕后页面的跳转方式以及如何处理Action返回的结果。通过合理配置`Result`与`Type`,可以实现灵活多样的页面转向逻辑,满足复杂业务场景的需求。 #### 二、Result概述 `Result`定义了...

    struts2 result配置详解

    这种配置类型通常用于实现 XML 数据的转换和处理。 10. PlainText Result 配置 PlainText Result 配置用于显示原始文件内容。这种配置类型通常用于实现文件查看、代码查看等功能。 Redirect-action 和 Redirect ...

    struts2的result标签使用

    Action负责处理用户的请求,ActionMapping定义Action与URL的映射,Result则指定Action执行后的返回结果,Interceptor则处理Action执行前后的逻辑。 ### 2. Result标签简介 `Result`标签是Struts2配置文件(struts....

    struts2 Result类型

    Struts2内置了一些基本的Result类型,如“dispatcher”(默认),它会将结果视图作为JSP、FreeMarker或其他模板引擎文件来渲染。还有“redirect”和“redirectAction”,前者用于HTTP层面的重定向,后者用于在内部...

    struts2 result type 介绍

    总的来说,Struts2的Result Type是控制应用程序流程的关键机制,它使得在不同场景下灵活地处理Action结果变得可能。理解并熟练运用各种Result Type,能够帮助开发者更高效地构建和维护Struts2应用。通过阅读和学习...

    struts2配置文件之result

    `dispatcher`是最常用的结果类型,默认情况下,当一个Action执行完毕后返回一个`dispatcher`类型的`result`时,会直接跳转到指定的JSP页面,如: ```xml &lt;action name="exampleAction" class=...

    action之间的跳转

    redirect-action 处理完后重定向到一个 action,请求参数全部丢失,action 处理结果也全部丢失。 Redirect-action 需要两次请求能完成的工作,请求转发只要通过一次请求即可完成。这样一来我们也就明白了为什么请求...

    详解Struts2中配置默认Action的方法

    * 提高系统的可扩展性:默认Action可以提高系统的可扩展性,因为它可以处理新的请求和响应,从而提高系统的可扩展性。 五、 结论 配置默认Action是Struts2中一个非常重要的概念,它可以提高用户体验、减少错误率和...

    难经3:Struts2,拦截器拦不住Result?

    - **处理异常**:确保Action和拦截器中的异常处理机制完善,避免因异常导致的结果处理失效。 总的来说,解决这个问题需要对Struts2框架有深入的理解,包括其核心接口、拦截器机制以及配置方式。通过逐步排查,定位...

    Struts2 Result类型

    在处理用户请求并执行相应的业务逻辑后,Action需要将结果返回给客户端,而Result类型就是用来定义这个返回过程的具体方式。下面将详细阐述Struts2支持的各类Result类型及其应用场景。 1. **Chain Result (type=...

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

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

    Action名称的搜索顺序

    3. **默认Action**:如果上述两种方式都无法找到匹配的Action,则会使用包(Package)中定义的默认Action(如果存在的话)。默认Action可以通过在包配置中设置`default-action-ref`属性来指定。 #### Action配置的...

    Struts2--4.结果集-- result元素

    - `Struts2_1600_GlobalResult`:全局结果是应用于所有Action的通用结果,它可以在struts-default.xml中定义,以提供统一的错误处理或成功处理机制。 通过深入理解并灵活运用这些`result`元素的特性,开发者可以...

    redirectaction 出现404 - result 'null' not found例子演示

    2. **结果类型不正确**:在上面的配置中,`null`结果的类型应为`redirectAction`,而不是默认的结果类型,如`dispatcher`。 3. **动作映射问题**:检查你的Action类是否正确映射到Struts2配置文件中的动作名称,...

    在web.xml中配置action或.do

    - **Action**:在Struts中,Action负责接收用户请求,处理业务逻辑,并返回相应的结果。Action类必须实现`Action`接口。 - **Result**:`Result`定义了Action执行完成后要执行的操作,比如重定向到另一个Action或...

Global site tag (gtag.js) - Google Analytics