spring mvc ajax json,springmvc从3.1.4.RELEASE升级到4.1.1.RELEASE版本后,ajax请求返回json时为什么报错?...

对http 406 code的解释是这样的:

406 - Not Acceptable

The 406 status code means that, although the server understood and processed the request, the response is of a form the client cannot understand. A client sends, as part of a request, headers indicating what types of data it can use, and a 406 error is returned when the response is of a type not i that list.

request请求header的Accept

Accept:

application/json, text/javascript, */*; q=0.01

但response响应header是Content-Type:text/html

通过万能的stackoverflow解决了问题,不只是需要加pom

org.codehaus.jackson

jackson-core-asl

${jackson.version}

org.codehaus.jackson

jackson-mapper-asl

${jackson.version}

com.fasterxml.jackson.core

jackson-core

2.4.3

com.fasterxml.jackson.core

jackson-databind

2.4.3

还需要在applicationContext.xml中增加

content-negotiation-manager="contentNegotiationManager" />

class="org.springframework.web.accept.ContentNegotiationManagerFactoryBean">

请求200正常的截图:

5f44669d9023f819b9cfa4031178418d.png

stackoverflow地址:http://stackoverflow.com/questions/12865093/spring-3-x-json-status-406-characteristics-not-acceptable-according-to-the-requ