Spring MVC控制器用@ResponseBody声明返回json数据报406的问题
本打算今天早点下班,结果下午测试调试程序发现一个问题纠结到晚上才解决,现在写一篇博客来总结下。
是这样的,本人在Spring mvc控制层用到了@ResponseBody标注,以便返回的数据为json格式的数据,到前端JS中用。
问题来了,当我用火狐调试发现请求总是报:406 Not Acceptable,message:description The resource identified by this request is only capable of generating responses with characteristics not acceptable according to the request "accept" headers ()错误。(说是指定的资源已经找到,但它的MIME类型和客户在Accpet头中所指定的不兼容)。
于是楼主那个纠结,那个郁闷啊。BUG了又BUG,百度了又百度,又怀疑是引用的ext.js文件有问题,因为报ext.base和ext.all语法错误。最后发现是mime类型不匹配。由于我要返回的是json数据,而浏览器接受的是text/html;charset=UTF-8文本类型。不过发现问题还有好几个,一一解决之:
- 未在pom文件中引入json的转换包。需要引入如下2个包:
<!-- jackson start --><dependency><groupId>org.codehaus.jackson</groupId><artifactId>jackson-core-asl</artifactId></dependency><dependency><groupId>org.codehaus.jackson</groupId><artifactId>jackson-mapper-lgpl</artifactId><version>1.9.12</version></dependency><!-- jackson end -->
2. spring-servlet.xml文件中需要配置转换的bean
<beanclass="org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter"><property name="messageConverters"><util:list id="beanList"><ref bean="mappingJacksonHttpMessageConverter" /></util:list></property></bean><bean id="mappingJacksonHttpMessageConverter"class="org.springframework.http.converter.json.MappingJacksonHttpMessageConverter"><property name="supportedMediaTypes"><list><value>text/html;charset=UTF-8</value></list></property></bean>
3. 最后,别忘了还要声明util的schema文件和地址,在spring-servlet.xml文件的头部声明部分加入如下三行即可
xmlns:util="http://www.springframework.org/schema/util"http://www.springframework.org/schema/utilhttp://www.springframework.org/schema/util/spring-util-3.0.xsd
OK,搞定,大功告成,下班~~~
转载于:https://www.cnblogs.com/tanglc/p/3664795.html
Spring MVC控制器用@ResponseBody声明返回json数据报406的问题相关推荐
- Spring MVC 3.2.2 +easyui 返回JSON数据格式
最近花了很多时间,研究Spring MVC 3.2.2 +easyui,实现了这个,前端页面实现个系统就很简单了. Spring MVC 返回JSON数据的方法 1). 直接 PrintWriter ...
- Spring MVC控制器的单元测试:REST API
Spring MVC提供了一种创建REST API的简便方法. 但是,为这些API编写全面而快速的单元测试一直很麻烦. Spring MVC测试框架的发布使我们可以编写可读,全面且快速的单元测试. 这 ...
- Spring Controller – Spring MVC控制器
Spring Controller annotation is a specialization of @Component annotation. Spring Controller annotat ...
- 编写 Spring MVC 控制器的 14 个技巧
欢迎关注方志朋的博客,回复"666"获面试宝典 通常,在Spring MVC中,我们编写一个控制器类来处理来自客户端的请求.然后,控制器调用业务类来处理与业务相关的任务,然后将客户 ...
- requestmapping默认是get还是post_编写Spring MVC控制器的14个技巧,你今天get到了吗?...
Java面试笔试面经.Java技术每天学习一点 公众号Java面试 关注我不迷路 原文:http://dzone.com/articles/14-tips-for-writing-spring-mvc ...
- Spring MVC控制器的单元测试:“普通”控制器
本教程的第一部分描述了如何配置使用Spring MVC Test框架的单元测试. 现在是时候动手做,学习如何为"常规"控制器编写单元测试了. 显而易见的下一个问题是: 什么是普通控 ...
- Spring 3.2.* MVC通过Ajax获取JSON数据报406错误
Spring 3.2.x通过@ResponseBody标签返回JSON数据的方法都报406错: Failed to load resource: the server responded with a ...
- Spring MVC控制器的单元测试:配置
传统上,为Spring MVC控制器编写单元测试既简单又成问题. 尽管编写调用控制器方法的单元测试非常简单,但问题是这些单元测试不够全面. 例如,我们不能仅通过调用已测试的控制器方法来测试控制器映射, ...
- 吐血整理!14个编写Spring MVC控制器的实用小技巧
全文共4248字,预计学习时长9分钟 编写Spring MVC控制器的最佳技巧 本文介绍了编写Spring MVC框架的控制器(controller)的基础技巧和最佳操作.在Spring MVC框架中 ...
最新文章
- andoridView修改
- java怎么清空表释放空间_Linux 删除文件未释放空间问题处理,下清空或删除大文件...
- 深入了解softmax
- Android开发之引用三方库导致SO库冲突的解决办法
- oracle instant client配置(MAC OS)
- 【HDU - 5489】Removed Interval(离散化,权值线段树,思维,最长上升子序列)
- 解决北京户口,中科院计算所校招,CV/图像处理工程师,博士优先
- Hibernate初探之单表映射——jar包的导入
- Topcomponent --sighoff
- 服务器版dll修复工具,DLL修复工具哪个好?五款修复能力强推荐
- 物联网周刊(第 5 期):智能家居入口之争
- word写论文公式编号问题
- ASP的工作原理和运行环境
- html 指针图表,HTML5 canvas 指针时钟
- Android程序崩溃处理
- 远程车控怎么玩?来,我教你..
- python技术--Linux基础01
- 如何用html制作彩虹,javascript – 如何使用HTML5画布生成彩虹圈?
- 阿里云弹性裸金属服务器常见问题汇总
- html头像动画,用CSS3实现头像旋转效动画
热门文章
- Ibatis 升级 Mybatis
- navigator对象介绍
- 计算机it分几个学,2020德国计算机专业申请指南 IT专业学习有哪些难度
- 卡耐基大学计算机专业分类,卡内基梅隆大学计算机专业
- jq设置checked是否选中_javascript之jquery如何判断input type=checkbox中checked是否存在选中项呢?...
- 组合模式java怎么获取钥匙_java中组合模式详解和使用方法
- Elastic-Job任务类
- Apollo创建项目
- AnnotationConfigApplicationContext容器初始化
- RocketMQ的Producer详解之分布式事务消息(原理分析)