Structs2无法执行execute()方法却可以执行validate()方法

页面在进行登录操作时,如果第一次没有正常登录成功,使用了addActionError()方法返回了错误的信息,在进行下一次登录操作时,错误信息将会仍然保存在actionError里面,这就会导致在后台的Java类中只会执行validate()方法,而不会执行execute()方法,在这里有个重要的概念就是当validate()方法如果出现错误信息,那他就会返回input字符串,直接就跳转到structs.xml配置文件中,而不会去执行execute()方法,所以在进行第二次登录的时候就不会得到想要的结果了,其修改的方法是在validate()方法中增加this.setActionErrors(null),那么就不会出现错误了。

你可能感兴趣的:(java)