请求 415 unsupported media处理 , SpringMVC:@RequestBody

参考文档:http://blog.csdn.net/yixiaoping/article/details/45281721
客户端js内容:
b2cSearchList.queryProdInfoByPage=function(pageNums){
	var b2cWebSearchV2ReqVo = {};
	b2cWebSearchV2ReqVo.itemCode = $.trim($("#b2cWebItemCode").val());
	b2cWebSearchV2ReqVo.sort = $.trim($("#b2cWebV2Sort").val());
	b2cWebSearchV2ReqVo.currentPage = pageNums;
	$.ajax({
		url : appRoot + "/b2cList/queryData.do",
		type : 'post',
		cache : false,
		dataType : "json",
		data :  JSON.stringify(b2cWebSearchV2ReqVo),
		contentType : 'application/json;charset=utf-8',
		success : function(data) {
			if (!data || !data.Products || data.Products.length < 0 )) {return;}
			$(".product-list").html(doT.template($("#productList").html())({
				idata : data.Products
			}));
			// 懒加载
			setTimeout(function() {
				lazyLoad.lazyLoad();
			}, 200);
		},
		complete : function() {},
		error : function(XHR, errorMsg, e) {}
	});
};
服务端代码:
@RequestMapping(value = "/b2cList/queryData.do", method = RequestMethod.POST)
    public ModelAndView b2cKeySearchList(@RequestBody B2cWebSearchV2ReqVo req) {
        ModelAndView mav = new ModelAndView(new MappingJackson2JsonView());
        // B2cWebSearchRespVo search = SolrUtil.searchItemList(req, solrClient);
        // 组装入参
        B2cWebSearchReqVo reqTmp = new B2cWebSearchReqVo();
        reqTmp.setCurrentPage(req.getCurrentPage());
}

访问: (post)http://xxx.nnn.com:8080/b2cList/queryData.do?{"itemCode":"1","sort":"1","currentPage":2}&_=1494554353019
错误一:415 unsupported media
网上搜了一下,不支持媒体格式,于是在spring-servlet.xml里加如下内容
<bean class="org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter">  
	    <property name="messageConverters">  
	        <list>  
	            <ref bean="jsonHttpMessageConverter" />  
	        </list>  
	    </property>  
	</bean>  
	  
	<bean id="jsonHttpMessageConverter" class="org.springframework.http.converter.json.MappingJacksonHttpMessageConverter">  
	    <property name="supportedMediaTypes">  
	        <list>  
	            <value>application/json;charset=UTF-8</value>  
	        </list>  
	    </property>  
	</bean>

错误二:Java.lang.ClassNotFoundException: org.springframework.http.converter.json.MappingJacksonHttpMessageConverter
网上搜了下缺jar包,于是pom.xml加
<dependency>
		    <groupId>com.fasterxml.jackson.core</groupId>
		    <artifactId>jackson-databind</artifactId>
		    <version>2.7.0</version>
		 </dependency>
注意,databind项目已经自动依赖了jackson-core与jackson-annotation,不需要额外重复引入
然后clean,重新启动就OK了
备注:项目是spring3.x版本


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值