jackson-core-asl-1.9.0.jar,jackson-mapper-asl-1.9.0.jar两个包
并且在controller中有如下代码
@RequestMapping(value="/getList")
@ResponseBody
public Map<String, Object> getList(){
List<Text> list=biz.queryList();
Map<String, Object> map=new HashMap<String,Object>();
map.put("size", list.size());
map.put("data", list);
map.put("success", "true");
return map;
}
运行,想要获取这个json数据,出现406,
异常代码:The resource identified by this request is only capable of generating responses with characteristics not acceptable according to the request "accept" headers.
原因,springMVC.xml文件中,没有配置如下代码
<bean id="messageAdapter" class="org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter">
<property name="messageConverters">
<list>
<!-- Support JSON -->
<bean class="org.springframework.http.converter.json.MappingJacksonHttpMessageConverter"/>
</list>
</property>
</bean>
<bean id="exceptionMessageAdapter" class="org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerExceptionResolver">
<property name="messageConverters">
<list>
<!-- Support JSON -->
<bean class="org.springframework.http.converter.json.MappingJacksonHttpMessageConverter"/>
</list>
</property>
</bean>
配置上方代码之后,运行获取json页面出现500.
异常代码:Could not find acceptable representation
因为少了下方代码,在添加如下代码后:
<mvc:annotation-driven />
<mvc:default-servlet-handler />
再次出现500异常:通配符的匹配很全面, 但无法找到元素 'context:component-scan' 的声明。
原因springMVC.xml的<beans>中没有添加如下代码: