当前位置: 代码迷 >> J2EE >> struts2文件下传有关问题
  详细解决方案

struts2文件下传有关问题

热度:62   发布时间:2016-04-22 00:51:55.0
struts2文件上传问题?
我在网页做了添加跟修改,添加的时候上传图片没有任何问题,但是修改的时候就出现上传相关的问题了。
出现的问题如下:
1、<input type="file" name="file"/> 修改的时候如果不选择任何图片,点修改没有问题,但是一旦选择了图片后再点上传就上传不成功,测试后,这种情况action的result总是返回input,同时不会进入方法体去执行。

2、没有任何异常抛出

struts.xml 修改相关配置部分:
<action name="mod_twoitem" class="mod_twoitem" method="mod_twoItem">
<interceptor-ref name="fileUpload">
<param name="allowedTypes">image/bmp,image/png,image/gif,image/jpeg,image/jpg,image/x-png</param>
<param name="maximumSize">1000000</param>
</interceptor-ref>
<result name="success" type="chain">
<param name="actionName">list_twoitem</param>
</result>
<param name="allowedTypes">image/bmp,image/png,image/gif,image/jpeg,image/jpg,image/x-png</param>
<param name="maximumSize">1000000</param>
<interceptor-ref name="defaultStack"></interceptor-ref>
<result name="input">/admin/mod_twoitem.jsp</result>
</action>

说明一点的是,添加配置部分跟这个基本一样。

整了一下午,唉,头都搞大了。

------解决方案--------------------
form 里 enctype="multipart/form-data" 设置了吗?
------解决方案--------------------
探讨

form 里 enctype="multipart/form-data" 设置了吗?

------解决方案--------------------
把<interceptor-ref name="defaultStack"></interceptor-ref>
放在<interceptor-ref name="fileUpload">前面

自定义拦截器要放在默认拦截器后面,不然默认拦截器
<interceptor-ref name="defaultStack"></interceptor-ref>
这个效果就没了。好多strut2功能也实现不了了
  相关解决方案