【Java异常】org.springframework.web.multipart.MultipartException: Failed to parse multipart servlet requ

简介: 【Java异常】org.springframework.web.multipart.MultipartException: Failed to parse multipart servlet requ

一、背景描述

CMS后台管理系统(springboot项目)在本地测试上传视频文件时,控制台报错信息如下:

org.springframework.web.multipart.MultipartException: Failed to parse multipart servlet request; nested exception is java.io.IOException: The temporary upload location [/tmp/tomcat.1428942566812653608.8090/work/Tomcat/localhost/ROOT] is not valid

二、异常分析

从上述报错信息来看,翻译过来内容是指:临时上传位置无效。这个临时位置是哪里来的,为什么会有临时位置这一说法。

1、对于HTTP POST请求来说,它需要一个临时目录来存储POST数据;

2、因为该目录是放到temp文件夹下的一个临时目录,对于一些操作系统来讲,会经常删除临时内容的,所以这个内容就不存在了,导致上述报错信息说临时上传位置无效的结果。(我电脑上装360安全卫士了,会经常提示我,电脑垃圾太多,让我清理,所以会经常清理电脑垃圾,包括缓存和临时文件都会清理的)

三、解决方案

以下是汇总的几种解决办法,根据个人喜欢可用不同的方法。

方案一:重启本项目

我是懒省事儿,重启本项目,然后就解决这个问题了。

方案二:修改配置文件(application.properties或者.yml配置文件)

修改完配置之后,重启项目

方式一,适用于一些版本旧的项目,目前我知道的是spring boot 2.0.1以下版本

spring.http.multipart.location=/data/upload_tmp

方式二:适用于一些新版本的项目,通常是spring boot 2.0.1以上的版本

spring.servlet.multipart.location=/data/upload_tmp

方案三:添加项目启动参数

-java.tmp.dir=/path/to/application/temp/

重启项目

 

完结!


相关文章
|
9月前
|
开发框架 监控 安全
Windows Defender 导致 Web IIS 服务异常停止排查
某日凌晨IIS服务异常停止,经查为Windows Defender安全补丁KB2267602触发引擎更新,导致系统资源波动,进而引发应用池回收。确认非人为操作,系统无重启。通过分析日志与监控,定位原因为Defender更新后扫描加重负载。解决方案:将IIS及.NET相关路径添加至Defender排除列表,避免业务影响。
924 116
|
移动开发 前端开发 API
鸿蒙web加载本地网页资源异常
在鸿蒙NEXT Api 12中,为解决Web组件加载本地资源(如图片、CSS等)失败的问题,我们采用拦截机制。具体步骤如下: 1. **替换路径**:通过正则表达式将HTML和CSS中的资源路径替换为带有标记的URL(如`http://local`),以便后续识别。 2. **拦截与返回**:在资源加载时,拦截带有标记的URL,读取对应的本地文件并返回给Web组件。此过程确保了本地资源能正确加载和显示。 代码实现包括路径替换、资源拦截及响应构建,确保Web页面能够顺利加载本地资源。
761 7
|
网络协议 Java Shell
java spring 项目若依框架启动失败,启动不了服务提示端口8080占用escription: Web server failed to start. Port 8080 was already in use. Action: Identify and stop the process that’s listening on port 8080 or configure this application to listen on another port-优雅草卓伊凡解决方案
java spring 项目若依框架启动失败,启动不了服务提示端口8080占用escription: Web server failed to start. Port 8080 was already in use. Action: Identify and stop the process that’s listening on port 8080 or configure this application to listen on another port-优雅草卓伊凡解决方案
1145 7
|
缓存 安全 Java
Java服务器端技术:Servlet与JSP的集成与扩展
Java服务器端技术:Servlet与JSP的集成与扩展
292 3
|
存储 Java 关系型数据库
基于Servlet和JSP的Java Web应用开发指南
基于Servlet和JSP的Java Web应用开发指南
680 1
|
存储 缓存 前端开发
Servlet与JSP在Java Web应用中的性能调优策略
Servlet与JSP在Java Web应用中的性能调优策略
323 1
|
前端开发 安全 Java
在Java服务器端开发的浩瀚宇宙中,Servlet与JSP犹如两颗璀璨的明星,它们联袂登场,共同编织出动态网站的绚丽篇章。
在Java服务器端开发的浩瀚宇宙中,Servlet与JSP犹如两颗璀璨的明星,它们联袂登场,共同编织出动态网站的绚丽篇章。
242 1
|
监控 前端开发 Serverless
现代化 Web 应用构建问题之观测站点的PV、UV和API异常等指标如何解决
现代化 Web 应用构建问题之观测站点的PV、UV和API异常等指标如何解决
263 2
Caused by: java.lang.ClassNotFoundException: javax.servlet.Filter
Caused by: java.lang.ClassNotFoundException: javax.servlet.Filter
436 3
|
Java 编译器
Error:java: Compilation failed: internal java compiler error
Error:java: Compilation failed: internal java compiler error
2220 1