通过配置action我们来实现用struts2上传文件的效果,xml配置如下
如此,我们发现,上传大小小于2M的文件是可以的,但是超过2M之后就会报错。查看文件上传的拦截器FileUploadInterceptor,发现有属性
那么在action中加入<param name="maximumSize">104857600</param>再次测试,发现依然无效,继续查看FileUploadInterceptor代码发现有段注释如下
找到struts.properties文件发现
OK,问题找到,是因为maximumSize默认大小为2M,并且它的大小是要小于struts.properties配置的struts.multipart.maxSize的,所以我们在xml配置加入
<constant name="struts.multipart.maxSize" value="104857600" />来改变struts.multipart.maxSize的大小,继续测试,发现超过2M的文件上传成功!