在以springMVC为框架的项目中,ajax请求总是返回error。在error方法中输出的msg为
[Object object] ,而我的dataType为json,怎么会返回对象呢?
在controller中我用了@ResponseBody注解,方法返回的类型为Map,说明ResponseBody没有把Map转为json。说明spring-servlet.xml配置文件没有配置注解转换json的配置。
打开spring-servlet.xml文件:
只有<bean class="org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter"/>
修改配置:
<bean class="org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter">
<property name="messageConverters">
<list>
<ref bean="stringHttpMessageConverter" />
<ref bean="mappingJacksonHttpMessageConverter" />
</list>
</property>
</bean>
<bean id="stringHttpMessageConverter" class="org.springframework.http.converter.StringHttpMessageConverter" />
<bean id="mappingJacksonHttpMessageConverter" class="org.springframework.http.converter.json.MappingJacksonHttpMessageConverter" />
正确返回json。