У меня есть 2 службы пружинного упора для загрузки. Один является производителем json-контента, а другой - потребителем.
Соответствующий код производителя для действия контроллера выглядит следующим образом:
@RequestMapping(value = "/cars", method = RequestMethod.POST)
public ResponseEntity<Cars> getCars(..methods params...){
.....some code here.....
HttpHeaders respHeader = new HttpHeaders();
respHeader.set("Content-Type", "application/json");
ResponseEntity<Cars> resp = new ResponseEntity<Cars>(cars, respHeader, HttpStatus.OK);
return resp;
}
В пользовательском коде службы загрузки Spring я использую resTemplate для вызова этой конечной точки и получения результата. Если вы заметили приведенный выше код производителя, у меня в атрибутах RequestMapping нет Produits = "application / json". Однако у меня есть Content-type как «application / json» в заголовках ответа.
Потребитель получает ответ в формате xml вместо json. Джексон стоит на пути класса.
Мне интересно, что объясняет возврат xml, а не json, хотя Content-type в заголовках ответа установлен на «application / json».
Если этот заголовок ответа не имеет никакого эффекта, то по умолчанию используется атрибут «производит» в RequestMapping xml, а не json?