之前在单独使用struts2时没有出现过这种情况,但最近在使用SSH整合时,输入N次错误信息,错误提示就会出现N次。
其实在整合的时候,是用了spring来管理了struts的Action,其实例都是有Spring创建的。而Spring中Bean的创建默认是单例的,所以每次请求都会到同一个Action实例上,所以N次的错误信息都显示出来了。
解决方法:把Spring的属性文件applicationContext.xml中对应的Bean 的scope属性改成prototype就可以了。每次新生成一个Action,相当于清空了原来的错误信息。
不知道还有没有更好的解决办法!