SSM框架整合时ajax请求返回406

Posted 硬是搞JAVA

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SSM框架整合时ajax请求返回406相关的知识,希望对你有一定的参考价值。

这个问题主要是在面试的时候机试,搭建spring+springmvc+Mybatis时传JSON格式的数据到前台出现的问题,做个笔记方便大家参考:

在浏览器访问时,json报406,说明spring没有处理好对象序列化成json的问题。百度了下需要配置

<mvc:annotation-driven />

但是依然出现406错误

最后的解决方式如下:

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

	<!-- 启动Spring MVC的注解功能,完成请求和注解POJO的映射 -->
	<bean
		class="org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter">
		<property name="messageConverters">
			<list>
				<ref bean="mappingJacksonHttpMessageConverter" /><!-- json转换器 -->
			</list>
		</property>
	</bean>

引入三个jackson2.4版本



如下:


jackson-core-2.4.1.jar


jackson-annotations-2.4.1.jar


jackson-databind-2.4.1.jar


问题就解决了,不在报406了,json数据出来了



以上是关于SSM框架整合时ajax请求返回406的主要内容,如果未能解决你的问题,请参考以下文章

ssm框架 怎么用ajax查询从数据库读取数据 返回json格式

406(不可接受)。尝试使用 @Responsebody 将对象或整数从 spring 处理函数返回到 ajax 请求

SSM整合时IDE: File is included in 4 contexts

SSM整合时IDE: File is included in 4 contexts

SpringMVC的AJAX请求报406错误

ajax回调函数无法获取后台传过来的值(SSM框架),大神请指教!