spring+struts结合在第一次验证失败之后,不再走action的方法,直接进入input

    xiaoxiao2021-03-25  122

    在spring的配置文件中的bea没有设置singleton或者scope属性,singleton默认是"true",scope默认是"singleton"。

    如果你没有设置这个属性,相当于是单例模式,在spring初始化的时候,产生一个实例,每次都会用这个实例。

    一次验证失败时,会纪录input到这个实例,再次请求这个action的时候,还是访问的这个实例,然而这个action对象的ActionErrors属性就可能有值。再访问这个action时,就会直接返回input。

    在有必要的情况下,必须把action对应的bean的singleton设为"false",scope设为"prototype"。

    如: <bean id="user" class="cn.com.suboo.User" scope="prototype"></bean> 

    或者<bean id="user" class="cn.com.suboo.User" singleton="false"></bean>

    转载请注明原文地址: https://ju.6miu.com/read-2666.html

    最新回复(0)