Upload Client for request part - salmanbaig8/imp GitHub Wiki
Model Request = new Model(); Request.setDocBaseUrl("url"); Request.setRepository("repo"); Request.setRepoUserName("user"); ArrayList requestParams = new ArrayList<>(); requestParams.add(""); requestParams.add(""); requestParams.add("");
Request.setRequestParams(StringUtils.join(requestParams, ','));
ClassPathResource classPathResource = new ClassPathResource("tree.jpg");
try {
Path tmpFile = classPathResource.getFile().toPath();
HttpHeaders headers = new HttpHeaders();
headers.setContentType(MediaType.MULTIPART_FORM_DATA);
headers.setAccept(Collections.singletonList(MediaType.APPLICATION_JSON));
MultiValueMap<String, Object> multipartRequest = new LinkedMultiValueMap<>();
HttpHeaders jsonHeader = new HttpHeaders();
jsonHeader.setContentType(MediaType.APPLICATION_JSON);
byte[] s = objectMapper.writeValueAsBytes(Request);
HttpEntity<byte[]> jsonPart = new HttpEntity<>(s, jsonHeader);
// putting the two parts in one request
multipartRequest.add("inputmodelRequestbodyname", jsonPart);
multipartRequest.add("uploadFile", new FileSystemResource(tmpFile.toFile()));
HttpEntity<MultiValueMap<String, Object>> requestEntity1 = new HttpEntity<>(multipartRequest, headers);
UploadResponse result = restTemplate.postForObject(this.url_document_upload, requestEntity1, UploadResponse.class);
System.out.println(result.getUploadMessage().getUpload().toString());