我有一个用于处理多部分请求的弹簧控制器。
@RestController
@RequestMapping("/file/fileStoreService")
class FileStoreService {
@Autowired
FileSystemStore fileSystemStore
@RequestMapping(value = "", method = RequestMethod.POST)
String saveOrUpdate(@RequestParam(value="data",required = false) String jsonData, @RequestParam(value="file",required =false) MultipartFile file) {
println 'data '+jsonData
println file
Map data = new Gson().fromJson(jsonData, HashMap)
String filestore = data.remove('filestore')
fileSystemStore.saveOrUpdate(data, filestore, file)
fileSystemStore.createFileChangelogs(data, filestore)
return ''
}
}
我已经在appContext.groovy中配置了multiPartResolver bean。(我使用groovy进行配置)如下所示
mvc.'annotation-driven'()
multiPartResolver(CommonsMultipartResolver){
maxUploadSize=500
}
但是当我尝试向控制器提交多部分请求时,它仍然抱怨multipartResolver未配置为
预期的MultipartHttpServletRequest:是一个MultipartResolver 构造
我在这里遗漏了什么。我还没有找到任何有关如何使用groovy配置配置multipartResolver的示例。 提前谢谢。
答案 0 :(得分:0)
糟糕的是,bean id定义中存在拼写错误。
应该是 multipartResolver 而不是 multiPartResolver
解决了这个问题。