我正在使用JHipster开发一个应用程序。我已将以下内容添加到application-dev.yml文件中:
spring:
profiles:
active: dev
multipart:
maxFileSize: -1
但是当我尝试上传文件时,我仍然收到错误> 1MB:
Caused by: org.apache.tomcat.util.http.fileupload.FileUploadBase$SizeLimitExceededException: the request was rejected because its size (20663006) exceeds the configured maximum (10485760)
我错过了什么?看来这应该是非常直接的。
更新1
我按照安迪的建议从spring
配置中取消了它,但仍然出现了错误。更新了yml文件:
server:
port: 8080
multipart:
maxFileSize: -1
spring:
profiles:
active: dev
datasource: ...
更新2
在较新版本的Sprint Boot上再次讨论这个问题,不得不改为:
spring:
http:
multipart:
max-file-size: 30MB
max-request-size: 30MB
答案 0 :(得分:89)
除配置最大文件大小外,如果您的单个文件大于10MB,或者您希望在同一请求中上传多个文件,并且大小更多,则可能还需要配置最大请求大小超过10MB。
需要使用的确切属性取决于您changed in 1.4使用的Spring Boot版本:
multipart.maxFileSize
multipart.maxRequestSize
spring.http.multipart.maxFileSize
spring.http.multipart.maxRequestSize
spring.servlet.multipart.maxFileSize
spring.servlet.multipart.maxRequestSize
答案 1 :(得分:4)
for spring-boot 2.x,file:src / main / resources / application.yaml
spring:
servlet:
multipart:
max-file-size: -1
max-request-size: -1
答案 2 :(得分:3)
像Emilio Garcia所提到的那样,它必须被置于spring.http.multipart
而不是multipart
。我最近将一个项目从Spring Boot 1.3.5升级到1.4.1,并遇到了multipart.maxFileSize
不再受到尊重的问题......它似乎已经改变了。
答案 3 :(得分:1)
如上所述here,您需要使用以下属性:
spring.http.multipart.max-file-size=128KB
spring.http.multipart.max-request-size=128KB
答案 4 :(得分:0)
Grails 3的默认文件大小为128000。
如果要增加大小,请转到项目的application.yml,因为我要将大小增加到25兆字节。文件大小以字节为单位,正如我们在上面看到的,最大大小为128000字节。所以我必须将25 mb转换为字节。
25 mb * 1024 kb * 1024 b = 26.214.400字节
现在好 /grails-app/conf/application.yml
并正确写下这些行
grails: 控制器: 上载: maxFileSize:26214400 maxRequestSize:26214400
现在清理应用程序并再次运行,它将产生奇迹。谢谢
答案 5 :(得分:0)
答案 6 :(得分:0)
用于使用外部tomcat配置CommonsMultipartResolver 定义名称为 MultipartFilter.DEFAULT_MULTIPART_RESOLVER_BEAN_NAME 的bean 作为默认的Spring Boot的默认MultipartFilter会查找具有默认bean名称的解析器。
@Bean(name = MultipartFilter.DEFAULT_MULTIPART_RESOLVER_BEAN_NAME)
protected MultipartResolver getMultipartResolver() {
CommonsMultipartResolver multipartResolver = new CommonsMultipartResolver();
multipartResolver.setMaxUploadSize(20971520);//size in bytes
multipartResolver.setMaxInMemorySize(20971520);//size in bytes
return multipartResolver;
}