在springmvc 我们加入@responsebody 注解希望返回一个json对象的时候经常会出现406的错误
首先 1.我们需要查看是否导入了jackson的包,如果没有导入则导入
2.springmvc配置文件中是否加入了注解配置
<mvc:annotation-driven />
3.查看web.xml中springmvc拦截配置, 如果是*.html则需要修改,因为后缀是html是不能响应json数据的,需要修改后缀名. 改成/ , *.action之类的都可以
如果不修改,也可以自己再增加一个拦截配置
如下:
<servlet-mapping>
<servlet-name>taotao-portal</servlet-name>
<!-- 伪静态化 -->
<url-pattern>*.html</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>taotao-portal</servlet-name>
<!-- 伪静态化 -->
<url-pattern>*.action</url-pattern>
</servlet-mapping>
这时候报406错误的请求后缀名换成.action就没有问题了