`
qq123zhz
  • 浏览: 534346 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

关于struts2执行2次action的若干总结

 
阅读更多

1、页面出现<img src="" />
2、@BeforeResult的方法中有异常发生,这个时候struts2会调用这个方法多次,这个问题同事有很多人碰到过,解决办法是在标注了@BeforeResult的方法中捕获所有异常,然后添加到

ActionError中。
3、出现的情况是在两个有继承关系的Action中都标注有@BeforeResult方法,这个时候struts就会调用子类中的标注有@BeforeResult的方法两次,这个问题可以从xwork的源代码

com.opensymphony.xwork2.interceptor.annotations.AnnotationWorkflowInterceptor中发现问题所在。
4、<button type="submit" class="positive" name="刪除" onclick="javascript:deleteTrainingCourse();"> type=sumbit导致action执行2次,改为button。
5、struts2和json整合时,firefox中的yslow插件会发送第二个 HTTP GET 请求得到页面的信息。会把getXXX的action方法执行两次,解决方法1、Action中的业务方法前别加get 或者 set(

属性的get set 除外)2、用@JSON(serialize=false)指定方法不序列化。

 

分享到:
评论

相关推荐

    Struts2教程

    Struts2 虽然在大版本号上是第二个版本,但基本上在配置和使用上已经完全颠覆了 Struts1.x 的方式(当然, Struts2 仍然是基于 MVC 模式的,也是动作驱动的,可能这是唯一 没变的东西)。 Struts2 实际上是在 ...

    Struts2入门小程序

    首先,Struts2的核心是Action类,它是业务逻辑处理的中心。在Struts2中,一个Action类对应于一个用户请求,处理相应的业务逻辑,并通过Result返回到指定的视图。在描述中提到的"小程序"可能包含了若干个Action类,每...

    struts-2.5所有jar包

    其中,`struts-2.5.16`可能是Struts2框架的一个具体发行版,例如,`16`可能是该版本的次要修订号,意味着在2.5主版本中进行了若干次更新和修复。 Struts2的jar包通常包括以下几个主要部分: 1. **struts2-core**: ...

    Struts2.2.1+Spring3.1.0.M2+Hibernate3.5.1整合配置demo

    接下来,Struts2与Spring的集成主要通过Struts2-Spring插件实现,该插件让Struts2能够识别由Spring管理的Action实例。这有助于实现业务逻辑的解耦。 最后,Spring与Hibernate的集成则通过Spring的Hibernate模板或...

    Struts2 分页实现

    在提供的"InterlibLog"文件中,可能包含了实现这个分页功能的具体代码示例,包括Action类、数据库查询逻辑、Struts2配置文件以及对应的JSP页面。通过分析和学习这些代码,你可以更深入地理解Struts2的分页实现过程。...

    struts2 Jar包

    用户发起请求时,Struts2通过配置的ActionMapping将请求映射到相应的Action,然后执行这个Action的execute方法。执行完成后,Action会返回一个Result,这个Result定义了如何展示结果,可能是重定向到一个新的JSP页面...

    Struts2项目DOE

    6. **安全考虑**:Struts2有若干安全漏洞,如著名的Struts2 OGNL注入漏洞,需要及时更新版本并合理配置以防止攻击。 在实际项目中,"DOE"可能涉及的是对Struts2的实验性设计或优化,例如: 1. **性能测试**:通过...

    Struts2分页(含mysql)

    Struts2分页技术是Java Web开发中一种常见的...Struts2提供了`params`拦截器,用于从请求中获取参数,`prepare`拦截器则负责在Action执行之前初始化Action的属性。在`struts.xml`配置文件中,可以这样配置: ```xml ...

    struts2.5.13和struts2.3.34的源码包

    2. **Interceptor**: 拦截器是Struts2的一大特色,它们在Action执行前后进行额外的操作,如日志记录、权限验证、性能监控等。 3. **Result**: 负责将Action的返回值转化为视图,如JSP、Freemarker模板等。 4. **...

    struts2.1.8

    2. **配置文件**:Struts2的核心配置文件是`struts.xml`,在这里定义了Action、结果类型、拦截器等。这个文件告诉Struts2如何处理HTTP请求以及如何响应。 3. **拦截器(Interceptors)**:拦截器是Struts2的一大...

    struts2参考文档,非常实用的struts参考技术

    在安全方面,Struts2也提供了若干安全特性,例如防止XSS(跨站脚本攻击)和CSRF(跨站请求伪造)的过滤器。然而,由于历史遗留问题,Struts2曾被发现一些严重的安全漏洞,因此及时更新框架版本和遵循最佳实践至关...

    struts-2.1.8-apps 所有最新的Struts2.x开发应用

    2. **拦截器机制**:拦截器是Struts2中的核心组件,它们按照预定义的顺序在Action执行前和执行后执行,提供了如日志、权限验证、事务处理等通用功能的实现。 3. **强大的插件系统**:Struts2拥有丰富的插件库,如...

    struts-2.2.3.1-lib.zip

    4. **拦截器(Interceptors)**:拦截器是Struts 2的核心特性之一,它们在Action执行前后进行拦截,实现诸如日志记录、事务管理、权限检查等跨切面的功能。 5. **配置文件**:Struts 2的配置通常在`struts.xml`文件...

    struts2分页更容易简单很快学会

    Struts2 分页技术是Java Web开发中...总结来说,Struts2结合Hibernate实现分页的关键在于Action类中的数据加载逻辑以及视图层的展示。通过合理地组织代码和配置,可以实现高效、灵活的分页功能,提供良好的用户体验。

    struts2分页实现

    结果类型是Struts2中处理Action执行结果的一种方式。你可以创建一个自定义的结果类型,专门用于处理分页后的数据显示。例如,可以创建一个名为`paging`的结果类型,负责将分页数据渲染到视图。 3. **使用Struts2...

    Struts2实现分页代码

    通过定义业务对象、实现DAO层和Action层逻辑、配置Struts.xml以及使用Struts2标签库展示数据等步骤,实现了较为完整的分页功能。这种实现方式不仅能够提高用户的浏览体验,还能有效降低服务器的压力,是一种非常实用...

    struts2例子

    Struts2的拦截器机制允许在Action执行前后添加额外的功能,如日志记录、权限检查、事务管理等。默认提供了若干预定义的拦截器,如Validation拦截器进行字段验证,和Result拦截器处理结果转发。 5. **结果类型...

    struts2+Spring3.0+Mybatis组合(纯注解方式)

    **Struts2** 是一个基于MVC设计模式的Web应用框架,它主要负责处理用户的请求,通过Action类来执行业务逻辑,并返回相应的结果。Struts2的核心是拦截器,可以自定义拦截器实现如权限控制、日志记录等功能。在本项目...

    struts-2.2.1.1

    4. **拦截器**:拦截器是Struts 2的一个强大特性,它们按照预定义的顺序在Action执行前后进行操作,如日志记录、权限验证、事务管理等。这允许开发者将通用逻辑抽离出来,提高代码复用性。 5. **结果类型**:结果...

Global site tag (gtag.js) - Google Analytics