Spring Boot – RestController десериализует загрузки YAML?JAVA

Программисты JAVA общаются здесь
Ответить
Anonymous
 Spring Boot – RestController десериализует загрузки YAML?

Сообщение Anonymous »

Как настроить Spring Boot RestController для приема загрузок YAML?

Следующее приводит к ошибке 415. Из отладки я вижу, что MappingJackson2HttpMessageConverter экземпляры в моем контексте Spring поддерживают только [application/json;charset=UTF-8, application/*+json;charset=UTF-8]. Я не могу быть единственным пользователем Spring Boot, пытающимся это сделать, и я удивлен, что это не просто работает — большинство вещей работает в Spring Boot!
В моем POM есть формат данных YAML:


com.fasterxml.jackson.dataformat
jackson-dataformat-yaml



У моего RestController есть такой метод:

@RequestMapping(method=RequestMethod.POST, value="/", consumes="application/yaml")
public String upload(@RequestBody Declaration declaration) {
//Do stuff
}


И мой тест:

@Test
public void triggersConvergence() throws Exception {
ClassPathResource fixture = new ClassPathResource("declaration.yml");
HttpHeaders requestHeaders = new HttpHeaders();
requestHeaders.add("Content-Type", "application/yaml");
requestHeaders.add("Accept", "application/json");

URI uri = new URI("http://127.0.0.1:"+port);
byte[] bytes = new byte[(int)fixture.contentLength()];
fixture.getInputStream().read(bytes);
RequestEntity postRequest = new RequestEntity(bytes, requestHeaders, HttpMethod.POST, uri);

ResponseEntity response = rest.exchange(postRequest, String.class);
assertThat(response.getStatusCode(), is(HttpStatus.OK));
assertThat(response.getBody(), is("Converged org my-lovely-org"));
}


Подробнее здесь: https://stackoverflow.com/questions/373 ... ml-uploads
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «JAVA»