使用jquery.form插件提交含有input type=file 的表单,后台使用springmvc MultiPartFile接收,当未选择上传文件时,spring会报错:org.springframework.beans.ConversionNotSupportedException: Failed to convert value of type 'java.lang.String' to required type 'org.springframework.web.multipart.MultipartFile'; nested exception is java.lang.IllegalStateException: Cannot convert value of type [java.lang.String] to required type [org.springframework.web.multipart.MultipartFile]: no matching editors or conversion strategy found
使用火狐的firebug查看请求参数为:Content-Disposition: form-data; name="file",
直接使用html form 的 submit,请求参数为:
Content-Disposition: form-data; name="file"; filename=""
Content-Type: application/octet-stream
直接使用html form 的 submit提交表单,即使未选择上传文件,也是OK的,
那么,断定问题就是对于为选择任何文件的文件类型的参数jquery.from 没有用字节流的方式传递,
这种问题怎么解决,是从spring的类型转换入手还是从jquery.from 的ajaxFrom 和ajaxSubmit方法入手呢?
看看关键代码
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。