Spring rest 控制器“Multipart File[] multipartFile”总是接收 [ ] 或空文件

Spring rest controller's " MultipartFile[] multipartFiles" always recieves [ ] or null files

我正在使用 Spring 4 和 Java 配置。我想将多个文件上传到服务器,但问题是我的 MultipartFile[ ] 参数将始终接收空/[ ] 参数。让我在这里分享我的代码是我的 'AppConfig'

@Bean(name = "multipartResolver")
public CommonsMultipartResolver multipartResolver(){
    CommonsMultipartResolver commonsMultipartResolver = new CommonsMultipartResolver();
    commonsMultipartResolver.setDefaultEncoding("utf-8");
    commonsMultipartResolver.setMaxUploadSize(50000000);
    return commonsMultipartResolver;
}

所以我注册了我的 multipartResolver 之后我写了这个控制器,它除了接收文件什么都不做。

@RequestMapping(value = "/upload", method = RequestMethod.POST)
public List<PutObjectResult> upload(@RequestParam("file") MultipartFile[] multipartFiles) {

    System.out.println("Multipart file length is  "+multipartFiles.length);
    return s3Wrapper.upload(multipartFiles);
}

这里我的 MultipartFile[] multipartFiles 总是空的/[ ] 无论我从我的客户端发送了多少 images/files。我正在使用 'PostMan' 发送我的文件,这里附有从 'postMan' 向多部分控制器发送请求的屏幕截图

你配置好了吗org.springframework.web.multipart.support.MultipartFilter

如果看不到这个 SO post

我只是通过在 jsp 中放置一个表单并使用表单提交测试我的方法来解决这个问题。我还使用了 HttpClient 来发送请求并且它有效。我无法理解为什么,但不知何故,问题出在 'PostMan' 工具上,我通过该工具访问了我的 restcontroller。