AJAX请求java后台 StringMVC 前台报406 (Not Acceptable)
使用SpsringMVC 请求后台时,方法可以走到后台方法 但是前台报406 (Not Acceptable) 异常。
使用的 注解@ResponseBody
@RequestMapping(params={"doAdd"})
@ResponseBody
public AjaxJson doAdd(AddrsbDepartmentDTO entity, HttpServletRequest request, HttpServletResponse response)
{
AjaxJson j = new AjaxJson();
try {
entity.setParentComcode(request.getParameter("parentComcode"));
entity.setComCode("1111221");
//addrsbDepartmentService.insertAddrsbDepartmenth(entity);
} catch (Exception e) {
j.setMsg(message);
j.setSuccess(false);
logger.error("失败", e);
}
return j;
}
在网上找了半天原因,最后发现原来是少了两个jar。
@ResponseBody 无法将对象转换为JSON 。传到前端后是个空值。从而引起406 (Not Acceptable)异常。
<dependency>
<groupId>org.codehaus.jackson</groupId>
<artifactId>jackson-core-asl</artifactId>
<version>1.9.12</version>
</dependency>
<dependency>
<groupId>org.codehaus.jackson</groupId>
<artifactId>jackson-mapper-asl</artifactId>
<version>1.9.12</version>
</dependency>
不是maven环境的 小伙伴,可以去自己下载。