"No result defined for action ... and result input"错误一般发生在Struts2的拦截器拦截时遇到了问题时。Struts2会将跳转到result为input的视图上,可是在配置文件里并没有给这个Action配置input的result。
能够建立一个内容为例如以下的Jsp文件。并在配置文件里配置result为input时跳转此文件。将会显示出详细的错误原因。
<div style="color:red">
<s:fielderror />
</div>
假设Jsp显示的错误原由于"Invalid field value for field ..."。说明Struts2的ParametersInterceptor在进行类型转换的时候出现了错误。比如时间格式错误、表单提交文件时没有使用Post方式或者没有加上“enctype="multipart/form-data"”。假设实在找不到错误原因,能够尝试在ParametersInterceptor的doIntercept方法中断点调试,查看ActionContext ac的parameters中属性的类型。