Используйте следующее:
$.ajax({
type:'POST',
url:'/admin/updateDisplay',
data:{"diagonal":"sss","aspectRatio":"0.5"},
contentType: 'application/json',
dataType: 'json',
})
это работает.
EDIT
Если загружается контекст приложения Spring, используя annotaitons, то ваш класс конфигурации должен иметь:
@Override
protected void configureContentNegotiation(
ContentNegotiationConfigurer configurer) {
configurer.favorPathExtension(false).favorParameter(true)
.parameterName("mediaType").ignoreAcceptHeader(true)
.useJaf(false).defaultContentType(MediaType.APPLICATION_JSON)
.mediaType("xml", MediaType.APPLICATION_XML)
.mediaType("json", MediaType.APPLICATION_JSON);
}
И ваш запрос Ajax должен включать в себя
contentType: 'application/json',
dataType: 'json',
чек измененный вызов ajax выше.
Если вы загружая контекст приложения пружинный с помощью XMLs затем используйте ниже:
<bean id="contentNegotiationManager"
class="org.springframework.web.accept.ContentNegotiationManagerFactoryBean">
<property name="favorPathExtension" value="false" />
<property name="favorParameter" value="true" />
<property name="parameterName" value="mediaType" />
<property name="ignoreAcceptHeader" value="true"/>
<property name="useJaf" value="false"/>
<property name="defaultContentType" value="application/json" />
<property name="mediaTypes">
<map>
<entry key="json" value="application/json" />
<entry key="xml" value="application/xml" />
</map>
</property>
</bean>
Для получения более подробной информации о написании RESTful веб-сервисов с Spring 3.2 см мой blog
Это не работает, htt6 Статус 415: Сервер отказал этот запрос, потому что объект запроса в формате, который не поддерживается запрашиваемым ресурсом для запрошенного метода. –
yeah .. u необходимо отправить contentType = application/json , и вы должны настроить свой весенний контекст приложения для обработки запросов json ... см. Edit. – dharam