Контроллер загрузки Spring возвращает xml, когда тип содержимого заголовка ответа установлен на json

У меня есть 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?


person Hary    schedule 25.04.2018    source источник
comment
Попробуйте удалить HttpHeaders respHeader = new HttpHeaders (); respHeader.set (Content-Type, application / json);   -  person Rajat    schedule 25.04.2018
comment
По умолчанию он возвращает json, поэтому не нужно упоминать это в заголовке   -  person Rajat    schedule 25.04.2018
comment
у меня вопрос, почему он возвращает xml так, как я его закодировал? Я поставил Produce = application / json, и он вернул json.   -  person Hary    schedule 25.04.2018


Ответы (1)


person    schedule
comment
Пожалуйста, добавьте пояснения - person GGO; 25.04.2018