关于文件上传的NullPointerException小问题

本文主要探讨了在SpringMVC中遇到的文件上传NullPointerException问题,总结了可能导致该错误的三个原因:multipartResolver配置、JSP页面enctype和method属性设置,以及后台控制器参数绑定。作者在排查过程中发现,问题实际上是由于接口URL与webapp下的文件夹同名导致的302重定向。解决方案是确保接口路径与文件夹名称不一致。
摘要由CSDN通过智能技术生成

在这里插入图片描述
在这里插入图片描述
这个错误困扰了蛮久的,在网上搜了蛮多关于 springmvc上传文件报错的原因,总结如下:
1.springMVC配置文件中 没有配置id=“multipartResolver” 这个一定要是multipartResolver 就很奇葩,还有就是要设置上传文件的大小"maxUploadSize" value=“10485760” 这里我设置的是10M
2.JSP页面里上传文件表单域一定要有enctype=“multipart/form-data” 并且是method=“post” 请求而非GET请求
3.后台控制层中 接受文件参数中的MultipartFile file 中的file一定要与JSP表单中的type=“file” name="file"中 name值同名 或者利用@RequestParam(value = “name值”)进行参数绑定

而我遇到的问题吧就很奇葩,当初怎么找都没找到原因,因为我都符合。。
后面在页面发送请求的时候开启了F12 开发者工具调试页面
发现了上图出现的问题,页面在post请求的时候报了302重定向到get所以后台没有接收到参数
出现这个问题可能是因为你接口地址正好也存在相同名称的文件夹
例如:
接口: /upload
当你的webapp下也存在upload这个文件夹时就会出现302
解决办法就是让他们不同名就行了,至于修改哪个就看自己了

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值