`

Struts2中action的方法被执行两次

 
阅读更多
原因:form表单提交会被struts2当作action执行
解决方法:<s:form action="" onsubmit="return false;">
分享到:
评论
1 楼 青春的、脚步 2012-12-02  
解决办法:
<s:form action="" onsubmit="return false;">

这么神奇 不可能吧 
但是平常的表单提交 比如保存 或者查询的操作 怎么不会被执行2次呢 

我的表单不是用js提交的但是也无缘无故执行了2次  蛋疼……

相关推荐

    struts1和struts2的区别

    - **Struts2**: Struts2中的Action更像是工厂模式下的产品,每个Action实例都是线程安全的。Struts2提供了ActionSupport基类来简化Action的实现。Action本身可以是任何实现了特定接口的Java对象,甚至是普通的POJO。...

    struts2中result类型之redirectAction

    在Struts2中,Result是Action执行后控制流程的重要组件,它定义了Action执行完毕后如何转发或重定向到一个新的页面。"redirectAction"是Struts2中的一种Result类型,专门用于实现HTTP级别的重定向。 重定向是一种...

    struts与struts2的区别

    Struts2支持OGNL(Object-Graph Navigation Language)作为其默认表达式语言,允许在JSP页面中直接访问对象属性和执行方法,而Struts1使用的是JSP EL(Expression Language)或者自定义的Struts标签。 **4. 视图...

    简单理解Struts2中拦截器与过滤器的区别及执行顺序

    Struts2 中的拦截器(Interceptor)和过滤器(Filter)是两个不同的概念,虽然它们都可以影响请求的处理过程,但它们的作用域、执行顺序和实现机制都有所不同。 拦截器(Interceptor) 拦截器是 Struts2 框架中的...

    Struts2+Freemark

    Struts2和FreeMarker是两种在Java Web开发中广泛使用的开源框架。Struts2作为MVC(模型-视图-控制器)架构的一部分,主要用于处理HTTP请求,管理业务逻辑,而FreeMarker则是一个模板引擎,负责生成动态HTML或其他...

    struts2 validation

    验证是通过Struts2的拦截器机制实现的,验证拦截器会在执行Action之前运行,如果验证失败,Action就不会被执行,从而避免了无效数据进入业务逻辑。 10. **最佳实践** 在实际开发中,应尽可能明确地定义验证规则,...

    JCaptcha4Struts2快速使用指南

    在这个配置中,`JCaptchaValidationInterceptor`会被插入到自定义的拦截器栈中,确保在Action执行之前验证验证码。 **使用注意事项** - 确保只在一个Action上使用一种方式(继承或拦截器),否则可能会因为重复...

    struts2整合hibernate

    2. **Struts2配置**:在struts.xml配置文件中,定义Action类及其对应的执行方法,同时配置结果类型(Result),以便调用DAO进行数据操作。 3. **Hibernate配置**:创建hibernate.cfg.xml配置文件,设置数据库连接...

    struts2学习笔记.doc

    - **Struts2的起源**:Struts2最初由WebWork和Struts1的核心开发者联合创建,其目的是为了弥补这两个框架的不足之处。 **1.2 开发环境配置** - **IDE选择**:Eclipse 3.2 + MyEclipse 5.5。 - **Servlet Container*...

    Struts2防止重复提交解决方案

    拦截器是Struts2的核心组件之一,它们基于AOP(面向切面编程)思想,允许开发者在Action执行前后插入自定义逻辑。在`struts-default.xml`中,预定义了一些拦截器,比如`params`用于参数绑定,`validation`用于验证,...

    Struts2面试题及答案

    在Struts2框架中,FilterDispatcher是核心组件之一,它负责处理用户请求,并调用相应的Action进行业务逻辑处理。相较于Struts1和WebWork,Struts2的设计更加先进和灵活。 **知识点解析:** 1. **FilterDispatcher**...

    struts2实现的简单登陆 附加拦截器防止重复提交

    当用户发送请求时,Struts2会根据配置的Action Mapping找到对应的Action执行,然后根据Action的返回值决定跳转到哪个Result。 在登录场景下,通常会有一个LoginAction,它包含接收用户输入、验证用户名和密码等方法...

    hibernate+struts2分页代码

    - 在Struts2中,Action类的属性可以用来接收前端传递的页码和每页大小,然后在Action中调用Hibernate的方法进行分页查询。 4. **前端展示**: - 前端页面通常使用JSP(JavaServer Pages)或者现代的前端框架(如...

    struts2令牌

    例如,在`struts-default.xml`文件中定义了一个默认的拦截器栈`defaultStack`,其中包含了`actionTokenInterceptor`和`TokenSessionStoreInterceptor`两个拦截器,用于执行令牌的验证工作。 ```xml ...

    struts2.jar

    Action执行完毕后,会返回一个Result,定义了如何展示处理结果。通过配置Action和Result,可以灵活控制应用程序的行为。 2. **拦截器(Interceptors)**:拦截器是Struts2的另一个关键特性,它们按预定义的顺序在...

    struts2+poi导出excel表格完整例子

    在Struts2中集成POI,我们通常会在Action类中编写导出的方法。这个方法会根据业务需求查询数据库,获取要导出的数据,然后利用POI将数据填充到Excel工作簿中。最后,将工作簿写入到HttpServletResponse的输出流中,...

    struts2 包中内容,除了lib

    - `ognl`: OGNL是Struts2中使用的表达式语言,用于对象到图形的导航和数据绑定。 - `test`: 测试用例,可以帮助理解代码的使用方式和预期行为。 总的来说,这两个压缩包为开发者提供了全面了解和深入研究Struts2...

    Struts2框架

    拦截器和过滤器是Struts2中的两个重要概念,它们在处理请求上有所不同。拦截器基于Java反射机制,可以访问Action上下文和值栈中的对象,允许在Action生命周期内多次调用。而过滤器则是基于函数回调,依赖于Servlet...

    Struts2解决表单重复提交

    在Struts2的配置文件struts.xml中,需要配置action,并引用token拦截器和defaultStack拦截器栈。这样,当发生重复提交时,Struts2框架会自动处理并转向token.jsp页面,提示用户重复提交了表单。 对于第二种原因,即...

Global site tag (gtag.js) - Google Analytics