У меня есть пользовательский объект BasicDetailDomain, который имеет свойства, включая Multipart. Требование заключается в вызове API с RestTemplate.
@PostMapping(value = "/postbasicdetails")
public ResponseEntity<ActionResponse<?>> postBasicDetails(BasicDetailDomain details) throws
IOException{
//logic here
}
Here is my Code
BasicDetailDomain basicDetailDomain = createBasicdetails();
HttpEntity<BasicDetailDomain> entity = new HttpEntity(basicDetailDomain, headers);
ResponseEntity<Object> response =
restTemplate.exchange(formFullURLWithPort(port,"/rpa/postbasicdetails"),HttpMethod.POST, entity,
Object.class);
assertEquals(HttpStatus.SC_INTERNAL_SERVER_ERROR, response.getStatusCode().value());
//createBasicdetails
private BasicDetailDomain createBasicdetails()
{
MultipartFile multipartFile = null;
try {
multipartFile = new MockMultipartFile("payterm.xlsx", new FileInputStream(new
File("src/test/resources/payterm.xlsx")));
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
BasicDetailDomain basicDetailDomain = new BasicDetailDomain();
basicDetailDomain.setClientID("oooo");
basicDetailDomain.setEnvironment("UAT");
basicDetailDomain.setPassword("kkk");
basicDetailDomain.setUsername("mmmm");
basicDetailDomain.setUseCaseID("uuuu");
basicDetailDomain.setFile(multipartFile);
return basicDetailDomain;
}
На стороне контроллера каждое свойство становится нулевым, а когда я передаю свойства в Queryparm, оно отражается на контроллере. Не в состоянии понять, что происходит.