Spring Boot ファイルアップロードの最大サイズを変更する
GAEで開発中のアプリケーションでファイルアップロードするとエラー発生。
ログを見ると、
java.lang.IllegalStateException: Multipart Mime part file exceeds max filesize
Caused by: java.lang.IllegalStateException: Multipart Mime part file exceeds max filesize at org.eclipse.jetty.util.MultiPartInputStreamParser$MultiPart.write(MultiPartInputStreamParser.java:133) ~[na:na] at org.eclipse.jetty.util.MultiPartInputStreamParser.parse(MultiPartInputStreamParser.java:741) ~[na:na] at org.eclipse.jetty.util.MultiPartInputStreamParser.getParts(MultiPartInputStreamParser.java:434) ~[na:na] at org.eclipse.jetty.server.Request.getParts(Request.java:2335) ~[na:na] at org.eclipse.jetty.server.Request.extractMultipartParameters(Request.java:537) ~[na:na] at org.eclipse.jetty.server.Request.extractContentParameters(Request.java:459) ~[na:na] at org.eclipse.jetty.server.Request.getParameters(Request.java:368) ~[na:na]
https://stackoverflow.com/questions/36386462/multipart-file-exceed-limit-exception
MultipartPropertiesのjavadoc
location specifies the directory where uploaded files willbe stored. When not specified, a temporary directory will be used.
max-file-size specifies the maximum size permitted foruploaded files. The default is 1MB
max-request-size specifies the maximum size allowed for multipart/form-data requests. The default is 10MB.
file-size-threshold specifies the size threshold after which files will be written to disk. The default is 0.
アップロードファイルのディレクトリが指定されない場合、テンポラリディレクトリが利用される
maz-file-size は許容される最大ファイルサイズを指定する、デフォルトでは1MB
maz-request-sizeはマルチパート/フォームによるリクエストで許容される最大サイズを指定する。デフォルトでは10MB
file-size-threshold は、ディスクに書き込まれるまでの閾値を指定する、デフォルトでは 0
@ConfigurationProperties(prefix = "spring.servlet.multipart", ignoreUnknownFields = false) public class MultipartProperties { : }
application.properties
に以下を追記
spring.servlet.multipart.max-file-size: 20Mb spring.servlet.multipart.max-request-size: 100Mb