SSM框架搭建使用json遇到406错误

来源:互联网 发布:移动网络和机顶盒办理 编辑:程序博客网 时间:2024/06/03 20:40

1. 后台返回JSON格式的数据,会报406错误。(fastjson)

原因:Springframework框架版本过旧,最新的版本可以。

2.请求报错:No converter found for return value of type: class com.alibaba.fastjson.JSONObject

原因:报这种错误表示fastjson 或 jackson 转换SpringMVC错误,需要引入转换器;
解决方法:
在spring-mvc.xml中配置:
如果是fastjson:

<mvc:annotation-driven>          <mvc:message-converters register-defaults="false">              <!-- 避免IE执行AJAX时,返回JSON出现下载文件 -->              <bean id="fastJsonHttpMessageConverter" class="com.alibaba.fastjson.support.spring.FastJsonHttpMessageConverter">                  <property name="supportedMediaTypes">                      <list>                          <!-- 这里顺序不能反,一定先写text/html,不然ie下出现下载提示 -->                          <value>text/html;charset=UTF-8</value>                          <value>application/json;charset=UTF-8</value>                      </list>                  </property>              </bean>          </mvc:message-converters>      </mvc:annotation-driven> 

如果是jackson:

<!--避免IE执行AJAX时,返回JSON出现下载文件 -->      <bean id="mappingJackson2HttpMessageConverter"          class="org.springframework.http.converter.json.MappingJackson2HttpMessageConverter">          <property name="supportedMediaTypes">              <list>                  <value>text/html;charset=UTF-8</value>                  <value>text/json;charset=UTF-8</value>                  <value>application/json;charset=UTF-8</value>              </list>          </property>      </bean>