在java开发中,我们经常使用springmvc框架,因为其restful风格给我们的开发带来了很大的方便,但经常遇到如404路径错误,500系统错误等,然而406错误我也是遇到了不少,但是这种错误很容易就解决了,因为你仅仅只是缺少了一些jackson的jar包而已。
下面是我遇到的问题,代码如下:
@RequestMapping("page") @Controller public class PageController { /** * 通用跳转页 * @author lenovo * http://localhost:8081/rest/page/index */ @RequestMapping(value="{pageName}",method=RequestMethod.GET) public String toPage(@PathVariable("pageName") String pageName){ return pageName; } }
当我用http://localhost:8081/rest/page/index这个地址访问的时候,浏览器端就报了406(Not Acceptable)相关的错误,因为springmvc框架经常要用到@ResponseBody注解,这个注解是用来返回json格式的数据的,所以就要用到jackson的jar包,但我这儿没有用到@ResponseBody注解,也报了406的错误。
没关系,不管你有没有用到@ResponseBody注解,你都应该加上jsckson的jar包,现在就在你的pom.xml中加入这样的代码吧。
<!-- Jackson Json处理工具包 --> <dependency> <groupId>com.fasterxml.jackson.core</groupId> <artifactId>jackson-databind</artifactId> </dependency>
如果你用的不是maven项目,那么可以在这儿下载你需要的jackson版本:http://cn.jarfire.org/jackson.all.html
补充:406 Not Acceptable错误一定是参数接收或返回有问题,请重点检查接收的参数类型是否一致,参数是否有转换json格式的包等。