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的名称。
如:
<result name="success" type="redirect">viewTask.action</result>
<result name="success" type="redirect-action">viewTask</result>
附:redirect-action 传递参数
<action name="enterpreinfo" class="preinfoBusinessAction" method="enterPreinfoSub">
<result name="success" type="redirect-action">
showpreinfo?preinfo.order_number=${preinfo.order_number}&preinfo.company_name=${preinfo.company_name}
</result>
<result name="error" type="redirect">
<param name="location">/error.jsp</param>
</result>
</action>
因为使用了redirect-action,所以要注意不能将 showpreinf?preinfo.order_number=${preinfo.order_number}写成 showpreinf.action?preinfo.order_number=${preinfo.order_number}
其中${}为EL表达式,获取action:enterpreinfo中属性的值;在这个配置文件里,多个参数的连接符使用了"&",但XML的语法规范,应该使用"&"代替"&",原理和HTML中的转义相同,开始没有注意,在struts分析配置文件时,总是报出这样的错误:
json 一般很容易忽略的一个地方(在EXT中非常有用)示例view plaincopy to clipboardprint?<package name="struts2" extends="json-default" namespace="/"> <action name="login" class="loginAction" method="login"> <result type="json"> <param name="includeProperties">success,result</param> </result> </action> <action name="main" class="loginAction" method="main"> <result name="main">/index.jsp</result> </action> </package> <package name="struts2" extends="json-default" namespace="/">
<action name="login" class="loginAction" method="login">
<result type="json">
<param name="includeProperties">success,result</param>
</result>
</action>
<action name="main" class="loginAction" method="main">
<result name="main">/index.jsp</result>
</action>
</package> view plaincopy to clipboardprint?private boolean success = true; private String result = "main.action"; //getter和setter方法略 private boolean success = true;
private String result = "main.action";
//getter和setter方法略
以上的success和result互相对应到了view plaincopy to clipboardprint?<param name="includeProperties">success,result</param> <param name="includeProperties">success,result</param> struts2会根据其设置的值匹配跳转对于json一般情况下很少用到,但是在处理ext的时候会用到这个属性类型,这个地方也是经常被忽略的。
相关推荐
在Struts2中,Result Type是控制流程的重要部分,用于定义动作执行后如何转发或重定向到特定的视图。这篇博客文章将深入探讨Struts2的Result Type,以及它在实际应用中的工作原理。 首先,我们需要了解Struts2的...
Result Type是Result的一种预定义类型,决定了结果如何被处理和展现给用户。在`struts-default.xml`配置文件中,我们可以看到Struts2支持多种内置的Result Type。 1. **dispatcher** (默认): 这是最常见的Result ...
Struts2 中常用 Result 类型(type)的用法和出现的问题 Struts2 中的 Result 类型(type)是指在 Struts2 框架中用于确定 action 执行结果的方式。常用的 Result 类型有 dispatcher、redirect 和 chain 三种。这三...
struts2 跳转类型 result type chain dispatcher redirect redirect action
<result type="redirect">/newLocation.action</result> ``` 在这个例子中,当`someAction`执行成功后,用户会被重定向到`/newLocation.action`。 通过`redirectAction`属性,我们还可以实现对另一个Action的...
"result-type"是这样一个专为前端开发设计的开源库,其核心关注点在于处理结果类型。这个库可能是为了帮助开发者在处理查询结果、API响应或其他数据时,提供一种标准化和可扩展的方式来处理不同类型的返回结果。 ...
<result type="redirectAction" name="secondAction"> secondAction </result> ``` 这样,当`firstAction`执行完成后,系统会自动调用`secondAction`,从而实现复杂的流程控制。 #### 总结 Struts2中的`...
<result type="redirect">/welcome.action</result> ``` 3. **redirectAction**:重定向到另一个Action,可以传递参数。 ```xml <result type="redirectAction"> <param name="actionName">welcome ...
<result type="redirect">/pages/success.jsp</result> ``` 3. **stream**: 用于处理大文件下载或流式传输内容,避免内存溢出。例如: ```xml <result type="stream"> <param name="contentType">...
### Struts2中的Result与Type详解 #### 一、引言 在Struts2框架中,`Result`和`Type`是两个非常重要的概念。它们主要用于控制Action执行完毕后页面的跳转方式以及如何处理Action返回的结果。通过合理配置`Result`与...
在struts.xml或action类的注解中,你可以设置`result`元素的`type`属性为`redirectAction`来配置重定向结果。例如: ```xml <result type="redirectAction"> <param name="actionName">anotherAction ...
<result type="xslt">/WEB-INF/content/data.xml</result> <param name="stylesheet">/WEB-INF/content/xsl/transform.xsl ``` 在这个例子中,`TransformAction`执行后,Struts2会使用指定的XML文件(data.xml)...
1. `name`:这是结果类型(Result Type)的标识符,通常对应于一个结果处理器。例如,"dispatcher"是默认的结果类型,它将控制权传递给一个JSP页面或者Servlet。 2. `type`:这个属性允许我们指定自定义的结果...
<result name="input" type="dispatcher">/name.jsp</result> ``` 在这个例子中,“login”是动作的名称,“com.action.Search”是指向实现该动作的具体 Java 类。`<result>` 元素则定义了不同的执行结果以及对应...
例如,在`validateTestBak`和`validateTestBakForEdit`这两个action中,`<result type="json" />`表示当这些方法执行完毕后,Struts2会将返回的结果转换成JSON格式并发送到客户端。这样,客户端可以通过JavaScript...
`Result`标签主要用于配置动作执行后的响应结果,它的`type`属性则定义了不同的处理方式。本笔记将深入探讨`Result`标签的`type`属性以及其不同类型的用法,包括`dispatcher`、`chain`、`redirect`、`redirectAction...
struts2实现的学生信息管理系统 <?xml version="1.0" encoding="UTF-8"?... <result type="redirect">List.action</result> <result type="redirect">List.action</result> </action>--> </struts>
This result uses the ActionMapper provided by the ActionMapperFactory to redirect the browser to a URL that invokes the specified action and (optional) namespace.... This result type ...
`<result>`标签定义了结果类型和物理视图地址,如`<result name="hfut" type="dispatcher">glxy.jsp</result>`,表示当Action返回"hfut"时,使用dispatcher结果类型转发到`glxy.jsp`页面。Struts提供了多种Result...
WebWork完全教程 ...本教程涵盖了 WebWork 框架的安装、Action、ActionContext、ServletDispatcher、单元测试、Result Type、EL 和 OGNL 等知识点,旨在帮助开发者快速掌握 WebWork 框架的使用和开发。