问题:
用到了校验框架,在jsp页面校验失败一次后,无论再次输入正确与否都跳转不到except page。
原因:
在spring创建action对象时,默认为单例模式(singleton) 所谓单例指spring对一个IOC容器只生成一个对象。 而在我的校验中没次请求提交,用到的是一个action对象,这样所有的错误信息存到map (fieldError信息)中,并没有清除。
解决方案:
所以为了每次请求清除map中的错误信息,我需要针对每次用到action的请求都重新创建一个对象。 在applicationContext-*.xml文件下配置action对应的bean时应配上属性scope="prototype". 这样就达到了目的。问题就解决了。