406(不可接受)。尝试使用 @Responsebody 将对象或整数从 spring 处理函数返回到 ajax 请求
Posted
技术标签:
【中文标题】406(不可接受)。尝试使用 @Responsebody 将对象或整数从 spring 处理函数返回到 ajax 请求【英文标题】:406(Not acceptable) .trying to return object or integer from spring handling function using @Responsebody to ajax request 【发布时间】:2015-12-04 22:38:31 【问题描述】:我在javascript中使用了以下代码:
function submit()
var form = $('#egform').serialize();
alert("before ajax");
$.post("testing.html", form, function(data, status)
if (data==1)
alert("Save successfull");
else
alert("Failed");
);
在我的控制器中:
@RequestMapping("testing.html")
public @ResponseBody Integer gettestvalue(HttpServletRequest request)
String a=request.getParameter("first");
System.out.println(a);
return 1;
但我没有得到返回的 1 到 javascript 函数。
我做错了什么?
【问题讨论】:
你会得到什么?试试console.log(data)
看看返回值
您可以在调用时访问方法gettestvalue
..?
将 int 更改为 Integer 作为您的返回类型。
@Aakash 但它不起作用
@gefei 实际上我在控制台上查看时出现 406 错误
【参考方案1】:
确保您的pom.xml
中有以下依赖项:
<dependency>
<groupId>org.codehaus.jackson</groupId>
<artifactId>jackson-mapper-asl</artifactId>
<version>1.9.13</version>
</dependency>
或者,如果您不使用 Maven,只需确保将 Jackson Mapper 导入到您的项目中。
这对我来说不是必需的,但您可能还需要 core dependency:
<dependency>
<groupId>org.codehaus.jackson</groupId>
<artifactId>jackson-core-asl</artifactId>
<version>1.9.13</version>
</dependency>
【讨论】:
确定重建?您是否遇到同样的错误? 还要确保您的servlet-context.xml
中有<annotation-driven />
。
就是这样。还是同样的问题?你到底改变了什么?以上是关于406(不可接受)。尝试使用 @Responsebody 将对象或整数从 spring 处理函数返回到 ajax 请求的主要内容,如果未能解决你的问题,请参考以下文章
已完成 500 内部服务器错误; RestClient::NotAcceptable(406 不可接受)
Spring @RestController,spring-boot 出现意外错误(类型=不可接受,状态=406)