2016-08-31 4 views
-3

Я получаю код ошибки HTTP 406 с следующим сообщением об ошибке:JSON ответ от контроллера весной REST

The resource identified by this request is only capable of generating responses with characteristics not acceptable according to the request "accept" headers. 

Моя цель, чтобы получить мой класс POJO в ответ JSon. Просьба найти мои следующие конфигурации:

@RequestMapping(value="/testjson",produces="application/json") 
    public @ResponseBody Employee testjson() { 
     System.err.println("testing json"); 
     Employee testEmp = new Employee("1", "Ankit", "Agarwal"); 

     return testEmp; 
    } 

весна-servlet.xml

<bean 
     class="org.springframework.web.servlet.view.InternalResourceViewResolver"> 
     <property name="prefix"> 
      <value>/WEB-INF/pages/</value> 
     </property> 
     <property name="suffix"> 
      <value>.jsp</value> 
     </property> 
    </bean> 
    <bean class="org.springframework.web.servlet.view.ContentNegotiatingViewResolver"> 
     <property name="mediaTypes"> 
     <map> 
      <entry key="json" value="application/json" /> 
      <entry key="xml" value="application/xml" /> 
      <entry key="rss" value="application/rss+xml" /> 
     </map> 
     </property> 
    </bean> 
+0

Я добавил весны-сервлет .xml, и я вижу ответ json с классом POJO. – Ankit

+0

У меня было одно сомнение. Я удалил bean ContentNegotiatingViewResolver в spring-servlet.xml, а также удалил result = "application/json" в RequestMapping. Тем не менее я могу видеть ответ json на этот URL. Кто-нибудь знает, откуда его поймать, что ответ будет типа json? – Ankit

ответ

0

попробовать это

@RequestMapping(value="/testjson",produces="application/json",headers = {"Content-type=application/json"}) 
+0

Пожалуйста, отредактируйте с дополнительной информацией. Только код и «попробуйте» ответы не приветствуются, поскольку они не содержат содержимого, доступного для поиска, и не объясняют, почему кто-то должен «попробовать это». Мы прилагаем усилия, чтобы стать источником знаний. –

+0

Моя единственная забота заключается в том, что я удалял output = "application/json" в классе. Тем не менее, я могу получить ответ json. Я хотел знать, какая часть весны это делает. Спасибо за ваш ответ. – Ankit

Смежные вопросы