Failed to parse multipart servlet request; nested exception

2023-11-20 12:14:58 浏览数 (3)

(某GK系统别tm总看我文章发给我们项目组)别在网上找我的文章发给我们项目组了,某GK(YG)系统

问题:一次开发中遇到一个springboot的异常:Failed to parse multipart servlet request; nested exception is java.io.IOException;

原因:为啥上传文件失败,从异常信息上看,说缺少目录[/tmp/tomcat.1428942566812653608.8090/work/Tomcat/localhost/ROOT]导致的。

分析:

1. 首先,我们应该知道,对于http POST请求来说,它需要使用这个临时目录来存储post数据。

2. 其次,因为该目录是挂在到/temp目录下的临时文件,那么对于一些OS系统,像centOS将经常删除这个临时目录,所有导致该目录不存在了。

解决方案:

1. 重启你的项目就可以了。

2. 在application.yml文件中设置multipart location ,并重启项目:

yml文件配置填写

3. 添加启动参数 -java.tmp.dir=/path/to/application/temp/,并重启。

其实这个问题一直存在,上面说的方法也没有很好的解决问题,我只是想记录一下这种情况。

0 人点赞