`

struts中Action中的传递

    博客分类:
  • SSH
阅读更多
由于result type="redirect-action"所以index.action中获取不到delete方法中处理得到的ActionMessage,ActionError;
解决办法:
修改<result type="redirect-action">index</result>为:
<result type="chain">index</result>可;

result type的类型说明如下:
Chain           : 用来处理Action链 
Dispatcher      : 用来转向页面,通常处理JSP 
FreeMarker      : 处理FreeMarker模板 
HttpHeader      : 用来控制特殊的Http行为 
Redirect        : 重定向到一个URL 
Redirect-Action : 重定向到一个Action 
Stream          : 向浏览器发送InputSream对象,通常用来处理文件下载 
Velocity        :处理Velocity模板 
XLS             :处理XML/XLST模板 
PlainText       :显示原始文件内容,例如文件源代码 
S2PLUGINS:Tiles : 结合Tile使用 


在struts2-core-2.x.jar中可以找到struts-default.xml文件,这个文件内已经有了对于所有类型Result的定义;

这是一个简单的例子


public class a extends ActionSupport {

	private String name="a";
	public String execute(){
		return SUCCESS;
	}
}

public class b extends ActionSupport {

	private String name="b";
	public String execute(){
		System.out.println(name);
		return SUCCESS;
	}
}

struts.xml
<action name="b" class="com.test.one.b">
		<result>welcome.jsp</result>
		</action>
		<action name="a" class="com.test.one.a">
		<result name="success" type="chain">b</result>
		</action>

如果访问a.action他会根据struts.xml转到b.action,这时他打印什么呢??
会不会传递属性了呢??
引用
b

这是打印结果.....
但如果给  a加上get方法
b加上set方法,就可以了!!并且这两个类的参数的名字一定要相同!
这其实是chain拦截器起的作用。
如果上面的struts.xml不加type=“chain”,那样他会提示找不到b
因为加了chain之后 他才会包装参数成ActionName
所以就无法传递下去!
分享到:
评论

相关推荐

    Struts中ActionError学习

    Struts是Java Web开发中的一款经典MVC框架,它的核心组件包括Action、ActionForm、Dispatcher Servlet(Controller)以及视图技术。在这个“Struts中ActionError学习”的主题中,我们将深入探讨ActionError这一机制...

    JS调用Struts中的Action

    在调用Struts Action时,经常需要向Action传递参数。这些参数可以是通过URL查询字符串传递,也可以是通过表单的字段值传递。 - **通过URL查询字符串传递参数**: 在调用Action时,可以在URL后面添加查询字符串来...

    struts2 action跳转action传参数

    ### Struts2中Action间的参数传递方法 在Struts2框架中,经常需要实现Action之间的跳转,并在跳转过程中传递必要的参数。这种需求在实际开发中非常常见,尤其是在需要根据用户的不同操作来调用不同的业务逻辑时。...

    Struts2中Action接收参数的方法

    Struts2 中 Action 接收参数的方法 Struts2 框架中,Action 组件可以通过多种方式接收参数,这些方式包括使用 Action 的属性、使用 DomainModel 和使用 ModelDriven。下面将详细介绍这些方法: 使用 Action 的属性...

    Struts中action技术实现对数据的增删改查

    Struts是Java Web开发中的一个开源框架,主要负责控制应用程序的流程,而Action技术是Struts的核心组件之一,用于处理用户的请求。在这个场景中,我们讨论的是如何利用Struts的Action来实现对数据库数据的增删改查...

    struts2 使用action属性接收中文参数(post提交)

    这篇名为“Struts2 使用action属性接收中文参数(post提交)”的博文可能讲述了如何在Struts2框架中正确处理中文POST请求。在处理中文参数时,主要涉及以下几个关键知识点: 1. **字符编码设置**: - 请求编码:...

    struts in action 英文版

    它根据配置文件(struts-config.xml)中的映射信息来处理请求,将请求分发到相应的Action,Action执行完毕后返回一个ActionForward对象,指示应该转向哪个JSP页面或者其他的Action。 Struts与Spring框架的结合使用...

    Struts In Action(英文)

    ActionForm则用于在Action和视图之间传递数据。书中会详细讲解如何创建和配置这两个关键组件。 5. **国际化和本地化**:Struts支持多语言应用,书中会介绍如何配置资源文件,实现应用的国际化和本地化。 6. **异常...

    struts中数据在action与jsp中的传递总结.pdf

    Struts 中数据在 Action 与 JSP 中的传递总结 Struts 框架中,数据在 Action 与 JSP 之间的传递是一种常见的需求。为了实现这种传递,Struts 提供了多种方式,本文将对这些方式进行总结。 方式一:通过 FormBean ...

    Struts 2实战 struts2 in Action

    - **定义**:Action类是Struts 2中的核心组件之一,它负责处理用户的请求并将数据传递给视图层。 - **特点**:Action类可以使用注解或XML配置文件进行配置,这为开发人员提供了极大的灵活性。通过实现`Action`接口...

    AJAX和struts2传递JSON数组

    总结来说,通过这种方式,我们可以利用AJAX向Struts2 Action传递JSON数组,实现异步数据交互。这在动态更新页面内容、处理表单提交等场景下非常有用。同时,使用JSON作为数据交换格式,使得前后端的数据交换变得更加...

    struts in action 中文

    3. **Action和ActionForm**:学习Action类如何处理用户请求,以及ActionForm对象如何在请求和模型之间传递数据。了解如何创建自定义Action和ActionForm实现特定功能。 4. **Tiles框架集成**:Struts常与Tiles框架...

    Struts In Action中文章节版

    在《Struts In Action》一书中,你可以学习到以下几个关键知识点: 1. **Struts框架基础**:理解Struts的核心概念,包括Action、Form Beans、Actionservlet、配置文件(struts-config.xml)等。这些是构建基于...

    Struts的小列子三个Action

    在这个"Struts的小列子三个Action"中,我们将深入探讨Struts框架的核心概念,特别是Action组件在其中的作用。 首先,Action是Struts框架中的关键组成部分,它是业务逻辑与请求处理的桥梁。在描述中提到的"三个...

    Struts2实战(Struts2 In Action中文版)

    2. **OGNL表达式语言**:Struts2使用OGNL(Object-Graph Navigation Language)进行数据绑定和表达式操作,学习如何使用OGNL进行数据访问和传递。 3. **拦截器**:讲解拦截器的原理和实现,如何自定义拦截器进行...

    struts中文帮助手册

    在Struts框架中,核心概念包括Action、ActionForm、Dispatcher(也就是控制器Servlet,即Struts Action Servlet)、配置文件(struts-config.xml)以及视图技术如JSP等。Action是处理用户请求的对象,ActionForm则...

    Struts In Action中文版

    在《Struts In Action》一书中,作者详细介绍了Struts的核心概念和工作原理,包括Action、Form Bean、配置文件、国际化、异常处理、Tiles组件、Struts与Spring的集成、Struts与Hibernate的整合等。书中的实例丰富,...

    struts in action中文手册

    4. **ActionForm**:ActionForm对象用于收集和验证用户的输入数据,从HTTP请求中提取数据,并传递给Action类进行处理。 5. **Tiles框架集成**:Struts支持Tiles框架,允许开发者创建可重用的页面组件,提高视图设计...

    实现struts框架简单功能

    接下来,你需要在Struts配置文件(通常是struts.xml)中声明这个Action: ```xml &lt;struts&gt; &lt;package name="default" namespace="/" extends="struts-default"&gt; &lt;action name="myAction" class=...

Global site tag (gtag.js) - Google Analytics