I am trying to set maxFileSize but it is not honored
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
Solution 1:
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
Solution 2:
for spring-boot 2.x, file: src/main/resources/application.yaml
spring:
servlet:
multipart:
max-file-size: -1
max-request-size: -1
Solution 3:
Like Emilio Garcia mentioned, it has to be placed under spring.http.multipart
and not multipart
alone. I have recently upgraded a project from Spring Boot 1.3.5 to 1.4.1 and ran into the issue that multipart.maxFileSize
is no longer honored .. it appears to have changed.
Solution 4:
As stated here, you need to use these properties:
spring.http.multipart.max-file-size=128KB
spring.http.multipart.max-request-size=128KB
Solution 5:
Grails 3’s default file size is 128000.
If You Want to increase the size go to application.yml of your project ,as i want to increase the size to 25 megabyte. the file size is set in bytes , as we see above max size is 128000 bytes. so i have to convert 25 mb into bytes.
25 mb * 1024 kb * 1024 b = 26.214.400 bytes
Now goo /grails-app/conf/application.yml
and write down these lines properly
grails: controllers: upload: maxFileSize: 26214400 maxRequestSize: 26214400
Now clean the application and run again , it will work wonders. Thanks