Spring boot 升级到Tomcat 8会中断多部分文件上载
我用的是弹簧靴。我在控制器中调用的方法如下所示:Spring boot 升级到Tomcat 8会中断多部分文件上载,spring-boot,tomcat8,Spring Boot,Tomcat8,我用的是弹簧靴。我在控制器中调用的方法如下所示: @RequestMapping(value = "/{customerId}/files/{id}/addFile", method = RequestMethod.POST, produces = "application/json; charset=UTF-8") @ResponseBody public Response uploadFile(@PathVariable String customerId, @PathVar
@RequestMapping(value = "/{customerId}/files/{id}/addFile", method = RequestMethod.POST,
produces = "application/json; charset=UTF-8")
@ResponseBody
public Response uploadFile(@PathVariable String customerId, @PathVariable String id,
@RequestParam("uploadedFile") MultipartFile file) throws IOException {
升级到Tomcat 8后,调用此方法时出现以下错误。我在第一行设置了一个从未到达的断点:
org.springframework.web.util.NestedServletException:请求
处理失败;嵌套异常是
org.springframework.web.multipart.MultipartException:无法分析
多部分servlet请求;嵌套异常为java.io.IOException:
org.apache.tomcat.util.http.fileupload.FileUploadException:流
封闭的
有人遇到过这个问题吗?尝试将multipart.maxFileSize和multipart.maxRequestSize添加到application.properties文件中。SpringBoot的默认值似乎为128KB,这破坏了我的上传。你可以发布pom.xml或构建工具的任何配置吗。我不能发布pom.xml,但我可以确认,这是在我的父母pom升级以下版本时开始的:spring boot 1.1.5.RELEASE到1.1.8.RELEASE&tomcat 7.0.54到8.0.12你尝试过更新版本的tomcat 8吗?8.0.20是撰写本文时的最新版本。另外,还有一个使用Spring Boot上传文件的方法。它在Tomcat8上运行良好。也许你可以看看指南,找出你的应用程序有什么不同。我试过Tomcat 8.0.20,但遇到了同样的问题。指南中的控制器看起来正在执行与上面相同的操作。:/不过,感谢您的帮助。值得一提的是,当您面临相同的问题时,如果建议的更改对您有效。很抱歉,我在想,multipart.maxFileSize和multipart.maxRequestSize的添加修复了我的问题,但事实上并没有。唯一的解决方案是将spring boot autoconfigure降级到1.2.1版。现在,除了降级spring boot autoconfigure之外,我已经找到了解决问题的方法。我创建了一个MultipartConfigElement Bean,在这里我设置了Multipart位置。