在点击提交后,struts会对其进行处理。
1.类型转化器对请求参数执行类型转换,并把转换后的值赋给action中的值
(jsp中的值,传到Action中时 对应属性转换失败)
2.如果在执行类型转换的过程中出现异常,系统会将异常信息保存到ActionContext,conversionError拦截器将异常信息添加到fieldErrors里。不管类型转换是否出现异常,都会进入第3步。
3.系统通过反射技术先调用action中的validateXxx()方法,Xxx()为方法名。
4.再调用action中的validate()方法。
5.经过上面4步,如果系统中的fieldErrors存在错误信息(即存放错误信息的集合size大于0),系统自动将请求转发至名称为input的视图。如果系统中的fieldErrors没有任何错误信息,系统将执行action中的处理方法。
注:进入input视图有两种情况: 1.判断类型转换失败 2.校验失败