当前位置:首页 >> 网络编程

struts2 spring整合fieldError问题


问题:

用到了校验框架,在jsp页面校验失败一次后,无论再次输入正确与否都跳转不到except page。


原因:

在spring创建action对象时,默认为单例模式(singleton) 所谓单例指spring对一个IOC容器只生成一个对象。 而在我的校验中没次请求提交,用到的是一个action对象,这样所有的错误信息存到map (fieldError信息)中,并没有清除。


解决方案:

所以为了每次请求清除map中的错误信息,我需要针对每次用到action的请求都重新创建一个对象。 在applicationContext-*.xml文件下配置action对应的bean时应配上属性scope="prototype". 这样就达到了目的。问题就解决了。