zoukankan      html  css  js  c++  java
  • org.springframework.web.multipart.MultipartException: Failed to parse multipart servlet request;

    本文目录

    一、背景描述

     二、异常分析

    三、解决方案

    3.1 方案一:重启本项目

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

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


    一、背景描述

    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安全卫士了,会经常提示我,电脑垃圾太多,让我清理,所以会经常清理电脑垃圾,包括缓存和临时文件都会清理的)

    三、解决方案

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

    3.1 方案一:重启本项目

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

    3.2 方案二:修改配置文件(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

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

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

    重启项目

     

    完结!

  • 相关阅读:
    【背包问题】
    【CodeVS1037】取数游戏
    【CodeVS2226】飞行棋
    网线主管
    第一周计划
    毕业设计每日总结2020/2/16
    毕业设计每日总结2020/2/15
    毕业设计每日总结2020/2/14
    毕业设计每日总结2020/2/13
    毕业设计每日总结2020/2/12
  • 原文地址:https://www.cnblogs.com/no8g/p/13415451.html
Copyright © 2011-2022 走看看