Minio上传大文件报错(rg.apache.tomcat.util.http.fileupload.impl.FileSizeLimitExceededException)

项目场景:

springboot集成minio报错:

使用minio上传大文件(图片等),会报超出显示异常


2024-04-25 16:36:33.286 ERROR 26060 — [nio-4000-exec-1] o.a.c.c.C.[.[.[.[dispatcherServlet] : Servlet.service() for servlet [dispatcherServlet] in context with path [] threw exception [Request processing failed; nested exception is org.springframework.web.multipart.MaxUploadSizeExceededException: Maximum upload size exceeded; nested exception is java.lang.IllegalStateException: org.apache.tomcat.util.http.fileupload.impl.FileSizeLimitExceededException: The field uploadFile exceeds its maximum permitted size of 1048576 bytes.] with root cause

org.apache.tomcat.util.http.fileupload.impl.FileSizeLimitExceededException: The field uploadFile exceeds its maximum permitted size of 1048576 bytes.
at org.apache.tomcat.util.http.fileupload.impl.FileItemStreamImpl$1.raiseError(FileItemStreamImpl.java:114) ~[tomcat-embed-core-9.0.41.jar:9.0.41]
at org.apache.tomcat.util.http.fileupload.util.LimitedInputStream.checkLimit(LimitedInputStream.java:76) ~[tomcat-embed-core-9.0.41.jar:9.0.41]
at org.apache.tomcat.util.http.fileupload.util.LimitedInputStream.read(LimitedInputStream.java:135) ~[tomcat-embed-core-9.0.41.jar:9.0.41]

问题描述

![在这里插入图片描述](https://img-blog.csdnimg.cn/direct/bd2310fc0db94fb38d78d396f371fbb9.png

在这里插入图片描述


原因分析:

提示:这里填写问题的分析:

首先根据报错,判断是文件上传超过最大的限制。追踪到我的minio工具类中

    /**
     * 上传文件
     */
    public void uploadFile(InputStream inputStream, String bucket, String objectName) throws Exception {
        minioClient.putObject(PutObjectArgs.builder().bucket(bucket).object(objectName)
                .stream(inputStream, -1, 5242889L).build());
    }

可以看到我配置了最大是5MB,但我上传的文件是4MB还是报错了!这是为什么呢?

解决方案:

问题解决:问题可能不在 MinIO 本身,而是在 Tomcat 或 Spring Boot 的配置上限制了上传的大小。

配置yml文件
添加这些配置

spring:
  servlet:
    multipart:
      max-file-size: 200MB
      max-request-size: 200MB

可以看到问题解决啦

在这里插入图片描述
在这里插入图片描述

  • 15
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值