`

struts2的一个action执行两次的问题

阅读更多

今天做了一个删除action,老是出问题,加了断点测试一下,原来这个删除action每次都会执行两次execute()方法,原因找了半天终于找出。原来我用的按钮有问题。之前的按钮:

 

 

<button type="submit" class="positive" name="刪除" onclick="javascript:deleteTrainingCourse();"> <img src="/html/icons/ico_cross.gif" alt="" border="0"/>刪除 </button>

 我的本意是要通过onclick方法来执行一个action,但是我忘了,这个地方只要是一个submit,就会执行两次,因为submit的任务就是提交表单。所以onclick执行了一次action,submit又执行了一次。

只要把submit改为button就ok了。

 

 

 

0
4
分享到:
评论

相关推荐

    struts1和struts2的区别

    Apache Struts 是一个用于构建企业级Java Web应用的开源框架。它分为两个版本:Struts1 和 Struts2。虽然两者都基于模型-视图-控制器(MVC)设计模式,但它们之间存在诸多差异。了解这些差异对于选择合适的技术栈、...

    struts2中result类型之redirectAction

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

    struts与struts2的区别

    总的来说,Struts2是对Struts1的一次重大升级,它在许多方面进行了优化和增强,包括更强大的控制层、更灵活的视图渲染、更易用的配置方式等,从而成为了更符合现代Web开发需求的框架。如果你正在考虑使用Struts进行...

    Struts2+Freemark

    Struts2是一个基于MVC设计模式的Web应用框架,它继承了Struts1的优点,并引入了许多改进,如拦截器、插件机制等。以下是一些核心概念: 1. **Action**: Struts2的核心组件,代表一次用户请求的处理逻辑。开发者创建...

    Struts2面试题及答案

    - **返回结果**:Action执行完毕后,返回一个结果对象给FilterDispatcher。 3. **配置文件**: - `web.xml`:配置FilterDispatcher过滤器及其初始化参数。 - `struts.xml`:定义Action映射、拦截器、结果类型等...

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

    Struts2是一个强大的Java web开发框架,它提供了一种组织应用程序结构和控制流程的方式,使得开发者可以更方便地创建基于MVC(Model-View-Controller)模式的应用。在这个"struts2实现的简单登陆 附加拦截器防止重复...

    struts2整合hibernate

    首先,Struts2是一个基于MVC设计模式的Web应用框架,它简化了Java EE应用程序的开发,提供了强大的控制层结构。Struts2的核心是Action类,它负责处理用户请求,并通过Result返回相应的视图。Struts2还包含拦截器、...

    Struts2防止重复提交解决方案

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

    struts2学习笔记.doc

    - **Struts2概述**:Struts2是一个开源的MVC框架,它结合了Struts 1.x、WebWork和其他一些框架的优点。Struts2的主要目标是简化Web应用程序的开发过程。 - **Struts2的起源**:Struts2最初由WebWork和Struts1的核心...

    JCaptcha4Struts2快速使用指南

    JCaptcha4Struts2 是一个专门为Struts2框架集成JCaptcha验证码服务的插件。JCaptcha本身是一种强大的、可自定义的图像验证码库,旨在防止自动机器人和恶意软件对网站进行非法操作。在Struts2项目中添加JCaptcha验证...

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

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

    hibernate+struts2分页代码

    - Struts2是一个基于MVC(Model-View-Controller)设计模式的Java Web框架,用于构建可维护、可扩展的Web应用。 - 它提供了Action类和Result类型来处理请求和响应,以及Interceptor拦截器机制来处理业务逻辑前后的...

    struts上传问题研究

    Struts2曾经因这个问题引发过严重的安全漏洞,攻击者可以通过构造特定的请求参数,导致任意文件被读取或执行。因此,对上传文件的存储路径和命名规则也需要严格控制,避免使用动态拼接的路径。 在工具方面,有一些...

    struts2 包中内容,除了lib

    Struts2是一个非常著名的Java Web开发框架,它基于MVC(Model-View-Controller)设计模式,用于构建高效、可扩展且易于维护的企业级应用程序。这个压缩包包含了Struts2框架的两个主要部分:文档(docs)和源代码...

    struts2.jar

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

    Struts2解决表单重复提交

    除了直接使用redirect,还可以使用redirectAction,并在result中配置actionName参数,这样提交后会通过另一个action来执行,从而避免了直接刷新带来的重复提交问题。 在具体实现上,通过修改result元素的type属性来...

    struts2源码下载啦

    通过对Struts2的源码学习,我们可以更深入地理解其内部工作流程,如Action的调度、拦截器的执行顺序、OGNL的解析过程等,这对于优化性能、调试问题或者开发自定义组件都非常有帮助。源码阅读不仅可以提高我们的编程...

    struts2令牌

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

    struts2批量下载

    - `downloadList`:当用户访问`downloadList.action`时,会执行`cn.edu.cuit.disasterSystem.web.struts2.action.DownloadListAction`类,并根据结果类型(success或error)跳转到对应的JSP页面。 - `download`:...

Global site tag (gtag.js) - Google Analytics