`

struts2验证信息重复出现解决方案

阅读更多

今天遇到一个很蠢的问题,所以写下来给自己留个教训。

      最近在写一个系统,用struts2+spring+Hibernate,无意中发现其中有一个action的验证信息会重复出现,因为这个action要完成的功能很简单,所以写的时候也没太留意。而不但信息会重复出现,更夸张的是,第一次验证失败后返回到input页面后,第二次就算是输入正确,系统也不会正常工作,永远在input页面,错误信息会不停的累加。关了浏览器重开还是这样,要重启服务器才行,汗。

      一想便知是容器出了问题,去配置文件里看了看,没发现什么不对啊!和别的action一样啊!无奈中,又由于经过好几个星期的奋战,此时代码已经很多,一时找起来很困难,想行点懒事,便想上网看看。

      没想到,还真有一朋友遇到我这样的事,看他的帖,症状和我的百分百雷同,真想和他握握手。

       而下面回帖的人这样写道:

      你的action是不是被spring代管了?

      我一看,是啊,我的action是被spring代管了。

      接着他又写道:

      你的action class是不是用的bean 的id?

      我一边看还一边点头,是啊,我的真是这样的,怎么这么了解我!(其实人人都这样写)

      最后他说:

      把你action 的class改成全路径,问题就会得到解决。

      是吗?我当时想,那就是说不要spring代管了,那我还要向这个action 注属性的,这样改了肯定注不进去了。

      正如我所说的,这样改了验证的问题是得到解决了,可是属性注不进去了。那不是正了一样又歪了一样,问题并没有得到根本性的解决。

      正在有点想抓狂中,却无意发现我的这个bean怎么没有写scope="prototype",这个属性是告诉spring,每来一个action给我产生一个新的实例。就这么简单,问题得以真正的解决。这个蠢问题是粗心犯下的低级错误,真想给自己两下。

分享到:
评论

相关推荐

    structs程序设计从入门到精通word文档

    终极解决方案 9 3.5为 Web 服务构建 Struts 应用程序 9 3.6Struts标记库是如何工作的 9 3.7Struts 9 3.8struts简单例子的分析(含代码注释和配置文件说明) 9 3.9本章小结 10 第4章 配置STRUTS组件 10 4.1 Web 应用...

    spring杂谈 作者zhang KaiTao

    1.1 Spring事务处理时自我调用的解决方案及一些实现方式的风险 1.2 我对AOP的理解 1.3 Spring开闭原则的表现-BeanPostProcessor的扩展点-1 1.4 我对IoC/DI的理解 1.5 SpringMVC + spring3.1.1 + hibernate4.1.0 集成...

    基于关联挖掘的构件检索方法研究及原型系统实现

    软件复用为避免软件开发过程中的重复劳动提供了解决方案,可以提高软件开发的效率和软件的质量,而软件构件技术是实现软件复用的关键技术。构件复用过程中,用户常因对构件描述机制认识有限而难以提出准确的检索需求...

    Java面试宝典2010版

    8、说说struts1与struts2的区别。 9、hibernate中的update()和saveOrUpdate()的区别,session的load()和get()的区别。 10、简述 Hibernate 和 JDBC 的优缺点? 如何书写一个 one to many 配置文件. 11、iBatis与...

    java开源包2

    JSTUN 是另外一个用来解决穿越 NAT 进行通讯的 Java 解决方案,是 STUN 协议的 Java实现。 在浏览器上运行Java程序 Doppio DoppioVM 是一个可在浏览器上直接运行 Java 项目的系统,无需任何插件支持。目前它包含一...

    最新Java面试宝典pdf版

    8、说说struts1与struts2的区别。 121 9、hibernate中的update()和saveOrUpdate()的区别,session的load()和get()的区别。 122 10、简述 Hibernate 和 JDBC 的优缺点? 如何书写一个 one to many 配置文件. 122 11、...

    java开源包1

    JSTUN 是另外一个用来解决穿越 NAT 进行通讯的 Java 解决方案,是 STUN 协议的 Java实现。 在浏览器上运行Java程序 Doppio DoppioVM 是一个可在浏览器上直接运行 Java 项目的系统,无需任何插件支持。目前它包含一...

    java开源包11

    JSTUN 是另外一个用来解决穿越 NAT 进行通讯的 Java 解决方案,是 STUN 协议的 Java实现。 在浏览器上运行Java程序 Doppio DoppioVM 是一个可在浏览器上直接运行 Java 项目的系统,无需任何插件支持。目前它包含一...

    Java面试笔试资料大全

    8、说说struts1与struts2的区别。 121 9、hibernate中的update()和saveOrUpdate()的区别,session的load()和get()的区别。 122 10、简述 Hibernate 和 JDBC 的优缺点? 如何书写一个 one to many 配置文件. 122 11、...

    java开源包3

    JSTUN 是另外一个用来解决穿越 NAT 进行通讯的 Java 解决方案,是 STUN 协议的 Java实现。 在浏览器上运行Java程序 Doppio DoppioVM 是一个可在浏览器上直接运行 Java 项目的系统,无需任何插件支持。目前它包含一...

    java开源包6

    JSTUN 是另外一个用来解决穿越 NAT 进行通讯的 Java 解决方案,是 STUN 协议的 Java实现。 在浏览器上运行Java程序 Doppio DoppioVM 是一个可在浏览器上直接运行 Java 项目的系统,无需任何插件支持。目前它包含一...

    java开源包5

    JSTUN 是另外一个用来解决穿越 NAT 进行通讯的 Java 解决方案,是 STUN 协议的 Java实现。 在浏览器上运行Java程序 Doppio DoppioVM 是一个可在浏览器上直接运行 Java 项目的系统,无需任何插件支持。目前它包含一...

    java开源包10

    JSTUN 是另外一个用来解决穿越 NAT 进行通讯的 Java 解决方案,是 STUN 协议的 Java实现。 在浏览器上运行Java程序 Doppio DoppioVM 是一个可在浏览器上直接运行 Java 项目的系统,无需任何插件支持。目前它包含一...

    java开源包4

    JSTUN 是另外一个用来解决穿越 NAT 进行通讯的 Java 解决方案,是 STUN 协议的 Java实现。 在浏览器上运行Java程序 Doppio DoppioVM 是一个可在浏览器上直接运行 Java 项目的系统,无需任何插件支持。目前它包含一...

    java开源包8

    JSTUN 是另外一个用来解决穿越 NAT 进行通讯的 Java 解决方案,是 STUN 协议的 Java实现。 在浏览器上运行Java程序 Doppio DoppioVM 是一个可在浏览器上直接运行 Java 项目的系统,无需任何插件支持。目前它包含一...

    java开源包7

    JSTUN 是另外一个用来解决穿越 NAT 进行通讯的 Java 解决方案,是 STUN 协议的 Java实现。 在浏览器上运行Java程序 Doppio DoppioVM 是一个可在浏览器上直接运行 Java 项目的系统,无需任何插件支持。目前它包含一...

    java开源包9

    JSTUN 是另外一个用来解决穿越 NAT 进行通讯的 Java 解决方案,是 STUN 协议的 Java实现。 在浏览器上运行Java程序 Doppio DoppioVM 是一个可在浏览器上直接运行 Java 项目的系统,无需任何插件支持。目前它包含一...

    java开源包101

    JSTUN 是另外一个用来解决穿越 NAT 进行通讯的 Java 解决方案,是 STUN 协议的 Java实现。 在浏览器上运行Java程序 Doppio DoppioVM 是一个可在浏览器上直接运行 Java 项目的系统,无需任何插件支持。目前它包含一...

Global site tag (gtag.js) - Google Analytics