spring 406 (Not Acceptable)错误
@Controller
@RequestMapping("/login")
public class LoginController {
@ResponseBody
@RequestMapping(value = "/verify.do", method = RequestMethod.POST)
public User login(@RequestParam("username") String userName, @RequestParam("password") String password) {
if (Cache.getUsers().containsKey(userName)) {
User user = Cache.getUsers().get(userName);
if (null != password && password.equals(user.getPasswrod())) {
System.out.println("user = " + user);
return user;
}
}
return null;
}
}
406 含义为:不可接受
根据此请求中所发送的“接受”标题,此请求所标识的资源只能生成内容特征为“不可接受”的响应实体。
简单讲就是服务器返回的信息客户端不接受。
这里使用@ResponseBody自动将对象转成json返回前端,由于缺少依赖包转换的时候出现错误,导致返回的user对象不被接受。
导入依赖的三个包jackson-annotations.jar、jackson-core.jar、jackson-databind.jar就能解决问题。
ivy配置:
<dependency org="com.fasterxml.jackson.core" name="jackson-core" rev="2.7.1"/>
<dependency org="com.fasterxml.jackson.core" name="jackson-databind" rev="2.7.1"/>
<dependency org="com.fasterxml.jackson.core" name="jackson-annotations" rev="2.7.0"/>