昨天到刚刚这个问题困扰了一天多,在网上找了很多的解决方案都没有用,最后找到了一句话让我有了一个猜想。
先说我的项目吧,使用SpringMVC+JQuery异步提交数据,返回406错误,如果返回的是字符串可以被error:function(date) 的date接收到,并可以显示出来,我之前提交的方式是使用.html后缀提交的,后来把.html后缀去掉,就正确了。
说说方法吧,提交后缀 使用了.html在SpringMVC.xml 中配置了使用application/html;charset=UTF-8的方式提交,在Controller中使用的@ ResponseBody指定返回的是一个文本的字符串,要想更改,只要换个方法提交就行了。
还有遇见的一种其他的错误:
1.添加Jackson的相关jar包
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-core</artifactId>
<version>2.4.6</version>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
<version>2.4.6</version>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-annotations</artifactId>
<version>2.4.6</version>
</dependency>
2.在spring配置文件中添加<mvc:annotation-driven />
3.在controller中指定@responseBody用于使用一步提交.