Невозможно выполнить сервисный вызов POST с Jar в качестве полезной нагрузки - PullRequest
0 голосов
/ 06 июня 2018

Я пытаюсь выполнить вызов службы POST с файлом JAR в качестве полезной нагрузки, я получаю сообщение об ошибке ниже

не найден подходящий HttpMessageConverter для типа запроса [org.springframework.util.LinkedMultiValueMap] и типа контента [application / octet-stream]

Код, который я пробовал, приведен ниже, любая помощь здесь будет отличной

    ClassLoader classLoader = getClass().getClassLoader();
    File file = new File(classLoader.getResource("*.jar").getFile());

    HttpHeaders headers = new HttpHeaders();
    headers.add(HttpHeaders.AUTHORIZATION, authHeader);
    headers.add(HttpHeaders.CONTENT_TYPE, MediaType.APPLICATION_OCTET_STREAM_VALUE);

    LinkedMultiValueMap<String, Object> payLoad = new LinkedMultiValueMap<String, Object>();
    payLoad.add("file", new FileSystemResource(file));

    HttpEntity<LinkedMultiValueMap<String, Object>> httpEntity = new HttpEntity<LinkedMultiValueMap<String, Object>>(payLoad, headers);
    try {
        RestTemplate restTemplate = new RestTemplate();         

        ResponseEntity<Object> response = restTemplate.postForEntity(url, Object.class);
    } catch (RestClientException ex) {
        ex.printStackTrace();       
    }

1 Ответ

0 голосов
/ 06 июня 2018

Звучит так, как будто вы должны добавить HttpMessageConverter для обработки потока октетов.Попробуйте добавить что-то подобное в ваш WebConfig

@Override
public void configureMessageConverters(
    List<HttpMessageConverter<?>> converters) {

    messageConverters.add(new ResourceHttpMessageConverter());

    super.configureMessageConverters(converters);
}
...