Эта ошибка возникает из-за того, что то, что ваш браузер отправляет на сервер в заголовке «Принять», не совпадает с тем, что сервер может получить по URL / электричество / использование /
Если вы используете библиотеку, такую как jQuery( и НЕ выполняет междоменных запросов , это важно), тогда ваш браузер отправит этот заголовок подтверждения:
Accept: application / json
Вы получаете эту ошибку, значитчто сервер не считает, что URL / electicity / Использование может вернуть JSON-ответ.Это настраивается в вашем файле webmvc-config.xml .Вот что я имею в виду в связи с запросами JSON:
<!-- allows rendering responses in XML and JSON formats -->
<bean class="org.springframework.web.servlet.view.ContentNegotiatingViewResolver" p:order="1">
<property name="mediaTypes">
<map>
<entry key="xml" value="application/xml"/>
<entry key="json" value="application/json"/>
</map>
</property>
<property name="defaultViews">
<list>
<bean class="org.springframework.web.servlet.view.xml.MarshallingView">
<property name="marshaller">
<bean class="org.springframework.oxm.xstream.XStreamMarshaller" p:autodetectAnnotations="true"/>
</property>
</bean>
<bean class="org.springframework.web.servlet.view.json.MappingJacksonJsonView"/>
</list>
</property>
</bean>
См. Это руководство для реализации ответов JSON в Spring MVC: http://rwehner.wordpress.com/2010/06/09/2-ways-to-create-json-response-for-ajax-request-in-spring3/
Почему этот код работает на Glassfish, но неTomcat - это хороший вопрос ...
Если вы выполняете междоменный запрос, то эта тема применима: getJSON () JQuery не правильно устанавливает заголовок Accept?