实际上,您可以在这里简化生活,因为您要做的只是提交包含某些字段和文件的表单。你 并不
需要为你正在尝试做@RequestBody。您可以使用常规的Spring MVC功能,因此您的控制器方法如下所示:
@ResponseBodypublic WebResponse<Boolean> updateEUSettings( Locale locale, @Valid EUPSettingsWrapper endUserPortalSettingsWrapper, @RequestParam(value = "file1", required = true) MultipartFile logo) {}向此控制器提交请求的客户端将需要具有的表单
enctype="multipart/form-data"。
在您的Spring MVC测试中,您将编写如下内容:
getMockMvc().perform(fileUpload(uri).file("file1", "some-content".getBytes()) .param("someEuSettingsProperty", "somevalue") .param("someOtherEuSettingsProperty", "someOtherValue") .accept(MediaType.APPLICATION_JSON) .contentType(MediaType.MULTIPART_FORM_DATA)) .andExpect(status().isOk());


