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

被折叠的 条评论
为什么被折叠?



