首先,需要清楚,http state 406代表什么意思:

406是HTTP协议状态码的一种,表示无法使用请求的特性来响应请求的网页。一般指客户端浏览器不接受所请求页面的MIME类型。

出现这样的错误无非就是三种情况:

在ssm框架中使用的@ResponseBody注解或将返回值变成json的形式返回到前台页面。

1、json所依赖的jar包不存在。

1).如果是maven项目的话,可以将

<dependency>
  <groupId>com.fasterxml.jackson.core</groupId>
  <artifactId>jackson-core</artifactId>
  <version>2.7.3</version>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
<version>2.7.3</version>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-annotations</artifactId>
<version>2.7.3</version>
</dependency>

引入到pom文件中。

然后,

<!--json转化器,它可以将结果转化-->
<bean id="mappingJacksonHttpMessageConverter" class="org.springframework.http.converter.json.MappingJackson2HttpMessageConverter">
<property name="supportedMediaTypes">
<list>
<value>text/json;charset=UTF-8</value>
</list>
</property>
</bean>

2)、spring和jackson版本对不上:

如果是使用的spring 4.0.*的话,可以引入jackson1.9.*的包,

如果是使用的spring4.1.*的话,可以引入jackson2.7.*的。

3)、我出现的就是第三种情况,

对应请求的后缀是.html的。

如果是以html为后缀的,返回的默认类型是text/html,而请求的是application/json的类型,浏览器无法解析,就会报错。

      这里可以将请求的后缀改成如 .action等   也可以  就不会报错了 

或者一定要使用html页面的话  可以做一下修改

        :解决方法:所以我们要针对此情况进行配置,更改html对应返回的类型。(注意:1、先声明下我使用的spring 版本:4.1.9,2、如果想要使用@ResponseBody返回json格式,就需要加载这三个包:jackson-core、jackson-databind和jackson-annotations,请自行去mvn repository中获取) 一般我们是配置在mvc配置文件中需要配置<mvc:annotation-driven />, 所以我们只要修改下这里就行,修改配置代码如下:

<mvc:annotation-driven content-negotiation-manager="contentNegotiationManager" />
<!-- 以.html为后缀名访问,默认返回数据类型是 text/html, 所以要修改返回的数据类型 -->
<bean id="contentNegotiationManager" class="org.springframework.web.accept.ContentNegotiationManagerFactoryBean">
<property name="mediaTypes">
<map>
<entry key="html" value="application/json;charset=UTF-8"/>
</map>
</property>
</bean>

然后重启一下项目,就可以正常请求了。
转载之---https://blog.csdn.net/zhangtxsir/article/details/79521810

最新文章

  1. vb小菜一枚-----了解“类型推理”
  2. 浅谈FloatingActionButton(悬浮按钮)
  3. sqoop连接oracle与mysql&amp;mariadb的错误
  4. js合并行
  5. 奇怪的margin,padding,table
  6. Excel下用SQL语句实现AVEDEV函数功能
  7. TDirectory.GetLastAccessTime获取指定目录最后访问时间
  8. 初次使用SVN心得
  9. 我用过的linux命令--安装JDK
  10. ZOJ3640之简单慨率DP
  11. 图像插值:OpenCV_remap
  12. mysql 服务【安装】【启动】【停止】【卸载】【重置密码】
  13. Spring boot 学习笔记 1 - 自定义错误
  14. RSA 汇总
  15. 星图智控推嵌入式家用AI摄像头
  16. appium三种等待时间
  17. MyBatis-${}与#{}
  18. js基础梳理-究竟什么是变量对象,什么是活动对象?
  19. php命令行脚本 mock数据
  20. Kotlin Reference (十一) Visibility Modifiers

热门文章

  1. bs4 string与text的区别
  2. removeEntry
  3. nginx负载均衡分配策略有哪些?
  4. python数据分析数据标准化及离散化详解
  5. LNMP一键环境安装多PHP版本共存的方法
  6. Python3之匿名函数
  7. 基于OpenCV的同态滤波
  8. requirejs r.js 打包报错paths fallback not supported in optimizer please provide a build config path override for jquery
  9. 安卓中listview中性能优化的处理
  10. python break/continue - python基础入门(10)