struts2上传文件ServletFileUpload解析request为空的三种解决方案

struts上传为空的原因是struts2拦截器对混合表单进行拦截,将混合表单的request转换为了普通表单的请求。

解决办法1:

   重写struts2拦截器对request的parser操作,具体实现如下

1)在struts2.xml里面定义bean

name="myRequestParser" class="org.app.myRequestParser.MyRequestParser" 
 scope="default" optional="true" />

class是自定义的类,里面可以什么都没有,但一定要重新parser函数。里面不写任何东西

2)在struts2.xml定义一个常量

解决办法2:

修改web.xml里面struts2拦截器配置,将mapping映射/*改为*.action

还有一种不算是解决办法,可能你的请求表单里面有个name名为名为name,目前未发现这种问题,重新定义下这个name



你可能感兴趣的:(struts2上传文件ServletFileUpload解析request为空的三种解决方案)