I am trying to set maxFileSize but it is not honored

Jose Gulisano picture Jose Gulisano · Feb 17, 2015 · Viewed 45.5k times · Source

I am developing an application utilizing JHipster. I have added the following to my application-dev.yml file:

spring:

    profiles:
        active: dev

    multipart:
        maxFileSize: -1

But I am still getting an error when I try to try to upload a file > 1MB:

Caused by: org.apache.tomcat.util.http.fileupload.FileUploadBase$SizeLimitExceededException: the request was rejected because its size (20663006) exceeds the configured maximum (10485760)

What am I missing? It seems this should be pretty straight forward.

Update 1

I un-nested it from spring config as suggested by Andy, but still got the error. Updated yml file:

server:
    port: 8080

multipart:
        maxFileSize: -1

spring:

    profiles:
        active: dev

    datasource: ...

Update 2

Ran into this issue again on newer version of Sprint Boot and had to change to this:

spring:
    http:
        multipart:
            max-file-size: 30MB
            max-request-size: 30MB

Answer

Andy Wilkinson picture Andy Wilkinson · Feb 18, 2015

In addition to configuring max file size, you may also need to configure max request size if you have a single file that's greater than 10MB or you want to upload multiple files in the same request with sizes that total more than 10MB.

The exact properties that need to be used depend on the version of Spring Boot that you are using as they changed in 1.4:

Spring Boot 1.3.x and earlier

  • multipart.maxFileSize
  • multipart.maxRequestSize

Spring Boot 1.4.x and 1.5.x

  • spring.http.multipart.maxFileSize
  • spring.http.multipart.maxRequestSize

Spring Boot 2.x

  • spring.servlet.multipart.maxFileSize
  • spring.servlet.multipart.maxRequestSize