`

spring struts2整合后,struts2的validate方法失效的解决办法

 
阅读更多

今天继续测试ssh的整合,发现之前的struts2的验证方法validate方法有异常。具体是这样的:

比如第一次输入的时候故意输入错误,第二次再正确输入后,还是不能提交,而且error的信息还在页面。

仔细的看了一下代码,才知道错误的根源:

spring里面配置了action,然后struts2.xml里面的action的class属性直接引用spring的bean的id值,此时struts2委托spring来管理自己的action了。所以,我们应该显式的在spring的配置文件上多加上:scope="prototype"。也就是每次请求时都成圣一个新的action,而spring默认的是singleton,即spring容器只是创建了一个而已。

<bean id="ListAllUsers" class="com.guang.action.UserAction" scope="prototype">
<property name="userService" ref="userservice"></property>
</bean>

希望对你有所帮助,谢谢!

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics