upload file size limit in spring boot

Viewed 8316

In version 2.1.0, spring.servlet.multipart.max-file-size property failed to bind org.springframework.util.unit.DataSize.

Property : spring.servlet.multipart.maxFileSize= 50Mb

Exception

Description:

Failed to bind properties under 'spring.servlet.multipart.max-file-size' to org.springframework.util.unit.DataSize:

Property: spring.servlet.multipart.maxfilesize
Value: 50Mb
Origin: "spring.servlet.multipart.maxFileSize" from property source "bootstrapProperties"
Reason: failed to convert java.lang.String to @org.springframework.boot.convert.DataSizeUnit org.springframework.util.unit.DataSize

Action:

Update your application's configuration
3 Answers

As Michael & Stahorszki mentioned

"B"

must be capital

Property : spring.servlet.multipart.maxFileSize= 50MB

In Yaml

spring:    
  servlet:
    multipart:
      max-file-size: ${MAX_FILE_SIZE:8MB}
      max-request-size: ${MAX_REQUEST_SIZE:8MB}

Today I have repeated this error, althought I set "MB" with capital "B":

Description:

Failed to bind properties under 'spring.servlet.multipart.max-file-size' to org.springframework.util.unit.DataSize:

    Property: spring.servlet.multipart.max-file-size
    Value: 300MB 
    Origin: class path resource [application.properties]:27:40
    Reason: failed to convert java.lang.String to org.springframework.util.unit.DataSize

If I comment out this options application wouldn't start anyway - there are some errors in the spring context. So I think it is a wrong error message then context cannot be created + multipart options are given.

In my case, I had redundant whitespace at the end of size (after MB, KB). To fix this, I deleted the space.

Related