关于springMVC转换json出现的异常

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>中没有添加如下代码:







版权声明:本文为博主原创文章,未经博主允许不得转载。

posted @ 2015-07-13 17:41  黑衣帽子  阅读(474)  评论(0编辑  收藏  举报