2010.07.21——— struts2 redirectAction 传参问题
参考:
http://blog.csdn.net/cmtobby/archive/2007/11/18/1891120.aspx
问题一:
最近在Struts2中配置action时,经常要在配置文件中给一个页面或者action传递若干个参数,如下面所示:
<action name="outHotelAction" class="com.mangocity.hotelOrderFlow.web.outHotelOrderAction">
<result name="outsourcing" type="redirect">/orderFlow/outHotelAction!initOrder.action?cancelOrderId=${forwordparam} </result>
</action>
如上所示,
cancelOrderId是我们通过url传递的一个参数名
forwordparam则是action中的一个实例变量,它具有相应的set和get方法。
问题二:
因为通常我只会传递一个,所以这样也没有问题。有一次碰到了要传2个参数的情况了,我就按照以前的习惯这样写: cancelOrderId=${forwordparam}&type=specialCancel
结果提示报错鸟,当然是 eclipse里面的xml校验报错咯。为什么这样写不行列?查了一下资料,又犯了经验注意错误啊。
在xml文件中&是属于特殊字符的,如果想表示&这个字符,需要对其进行转义,因此我换了个写法,如下所示
cancelOrderId=${forwordparam}
& type=specialCancel
这样就ok了
另外一种写法:
<action name="delete_dt" class="com.huitu.action.domain.XiTongGuanLi_GongChengXiangMu" method="delete_dt">
<result type="redirectAction">
<param name="actionName">initGongCheng.action</param>
<param name="gcbm">${GCBM}</param>
<param name="flat">delete</param>
</result>
</action>
这将会传递给initGongCheng两个参数 一个是falt为“delete” 另一个是gcbm 值是delete_dt里面的一个属性 在initGongCheng可以获得:
String GCBM = request.getParameter("gcbm");
String flat = request.getParameter("flat");
分享到:
相关推荐
Struts2支持多种内置结果类型,如`dispatcher`(默认的,用于转发到JSP)、`stream`(用于处理文件下载)和`redirectAction`(用于重定向到另一个Action)。每个结果类型都有其特定的配置方式来传递参数。 1. **在...
Struts2是一个基于MVC(Model-View-Controller)设计模式的开源Java Web框架,它在Web应用开发中被广泛使用。Struts2的核心在于提供一个强大的、灵活的、可扩展的架构,使得开发者能够更方便地实现业务逻辑与表现层...
方案 2:重写 Struts2 DefaultActionMapper 的 handleSpecialParameters 方法,增加action、redirect、redirectAction 等参数的过滤 这个方案是通过重写 Struts2 的 DefaultActionMapper 的 ...
十二、总结 本教程对struts2的基本知识进行了一些说明,关于struts2的更多详细内容应参看struts2的官方文档及提供的app实例。 下面对struts2的基本执行流程作一简要说明,此流程说明可以结合官方提供的struts2结构图...
通过分析`redirectActionTest`文件,我们可以深入理解Struts2中`redirectAction` Result类型的实现和应用场景,包括配置、工作流程以及优缺点。实践这些知识可以帮助我们更有效地构建和维护Struts2驱动的Web应用。
Struts2内置了一些常见的Result类型,如`dispatcher`(用于转发到JSP或其他资源),`stream`(用于处理文件下载),`redirect`和`redirectAction`(用于重定向)。 4. **Struts2配置**:Struts2支持XML和注解两种...
Struts2是一个非常著名的Java Web开发框架,由Apache软件基金会维护。这个“struts-2.3.15.3_lib.zip”文件包含了Struts2框架的库文件、实例、文档以及源码,是开发者学习和使用Struts2的重要资源。 Struts2的核心...
2. **Result类型**:Struts2允许开发者定义多种结果类型,如Redirect、RedirectAction、Stream等,来控制请求的流向和响应的生成方式。 3. **Interceptor拦截器**:拦截器是Struts2的特色之一,它们在Action执行...
**Struts2实战——《Struts2 In Action中文版》** 《Struts2 In Action》是一本专为Java开发者设计的实战指南,旨在深入解析Struts2框架的使用与实践。Struts2作为一款强大的MVC(Model-View-Controller)框架,极...
漏洞根源在于,DefaultActionMapper类支持以"action:"、"redirect:"、"redirectAction:"作为导航或是重定向前缀,但是这些前缀后面同时可以跟OGNL表达式,由于struts2没有对这些前缀做过滤,导致利用OGNL表达式调用...
### Struts2 文件上传之文件类型 allowedTypes.txt 在探讨Struts2框架中的文件上传功能时,一个重要的概念就是如何通过`allowedTypes`来限制上传文件的类型。这对于确保系统的安全性和提高用户体验至关重要。 ####...
例如,Struts2提供了Result类型如`redirectAction`和`dispatcher`,使得跳转到不同的页面进行显示、更新或删除操作变得简单。 4. **新表单标志的使用**: - Struts2支持多种表单标签,如`s:textfield`, `s:...
### Struts2 学习重点知识点总结 #### 一、Struts2 概念与架构 **1.1 Struts2 简介** - **定义**:Struts2 是 Apache 组织提供的一个基于 MVC 架构模式的开源 Web 应用框架。 - **核心**:Struts2 的核心其实是 ...
5. **结果类型(Result Types)**:Struts2支持多种结果类型,如dispatcher(重定向或转发到一个JSP页面)、stream(用于下载文件)和redirectAction(重定向到另一个Action)。 6. **模型驱动(ModelDriven)**:...
在使用Struts2的过程中,可能会遇到一个常见的问题,即应用试图跳转到一个不存在的页面,导致用户看到404错误。404错误通常表示服务器无法找到请求的资源,这可能是由于URL配置错误、控制器映射问题或者资源实际不...
Struts2是一个强大的Java web应用程序框架,用于构建和维护可扩展、模块化和易于管理的Web应用。Result是Struts2框架中的一个核心组件,它负责处理动作执行后的结果,如视图渲染、跳转等操作。在Struts2的学习过程中...
Struts2是一个基于MVC(Model-View-Controller)设计模式的Java Web应用程序框架,它在Web开发领域中被广泛使用。Struts2的核心在于提供一个可扩展且灵活的架构,帮助开发者创建结构清晰、易于维护的Web应用。在这个...
Struts 2是一个高度灵活且强大的Java Web应用程序开发框架,它在原有的Struts 1框架的基础上结合了WebWork的核心机制,旨在提供更高效、更易用的MVC(Model-View-Controller)架构。这个"开发框架struts2.1.8.zip...
5. **Struts2拦截器**:介绍Struts2的核心组件之一——拦截器,如何使用拦截器进行日志记录、权限验证等操作。 6. **结果类型与导航**:讲解如何配置结果类型,如Redirect、RedirectAction、Stream等,以及基于...
Struts2是一个强大的Java web应用程序开发框架,它基于Model-View-Controller(MVC)设计模式,为开发者提供了构建高效、可扩展且易维护的Web应用的解决方案。本实例是针对初学者的一个实践教程,旨在帮助理解并掌握...