行动支持

沈弘艺
导读 大家好,小阳来为大家解答以上的问题。行动支持这个很多人还不知道,现在让我们一起来看看吧!1、我今天也被这个问题纠结到了,最后发现原因

大家好,小阳来为大家解答以上的问题。行动支持这个很多人还不知道,现在让我们一起来看看吧!

1、我今天也被这个问题纠结到了,最后发现原因是因为在spring创建action对象时,默认使用的是单例模式 ,即spring对一个IOC容器只生成一个对象。

2、 而在校验中每次请求提交,用到的是一个同一个Action对象,这样所有的错误信息存到map (fieldError信息)中,并没有清除。

3、解决的办法是在applicationContext-*.xml文件下配置action对应的bean时应配上属性scope="prototype". 这样每次请求都会重新创建一个Action对象,所以请求中的错误信息就不用手动清除了。

4、xml那种验证是拦截器 当你在登入页面上验证时 错误的话 他会显示在username上..这样格式会变了(css)所以可以变下 我用的是public void validate() {if(null==this.getUsername() || "".equals(this.getUsername().trim())){//this.addFieldError("username", "用户名不为空");addActionError("用户名不为空");}if(null==this.getPassword() || "".equals(this.getPassword().trim())){//this.addFieldError("password", "密码不为空");addActionError("密码不为空");}}你在页面上用 就会取到addActionError里 这样不会改变css的祝你好运...。

本文到此分享完毕,希望对大家有所帮助。

标签:

版权声明:本文由用户上传,如有侵权请联系删除!