开发者社区> 问答> 正文

使用jquery.form提交含有file的表单?报错

使用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方法入手呢?

展开
收起
爱吃鱼的程序员 2020-06-09 10:36:12 615 0
1 条回答
写回答
取消 提交回答
  • https://developer.aliyun.com/profile/5yerqm5bn5yqg?spm=a2c6h.12873639.0.0.6eae304abcjaIB

    看看关键代码

    2020-06-09 10:36:28
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关课程

更多

相关电子书

更多
低代码开发师(初级)实战教程 立即下载
冬季实战营第三期:MySQL数据库进阶实战 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载