我有以下问题。如果我返回声明,它就会起作用:
@POST
@Consumes(MediaType.APPLICATION_JSON)
@Produces(MediaType.APPLICATION_JSON)
@Path("foo")
public Response foo(Model bar) throws CustomException {
// do parsing and return response
JSONObject response = fooBar.handleRequest(bar);
return Response.status(HTTP_STATUS).entity(response.toString()).build();
}
如果我在没有“.toString()”的情况下尝试它,我会得到一个空的json对象。 到目前为止找不到任何答案...
有人知道为什么吗?
答案 0 :(得分:0)
将返回类型更改为object,只返回JSONObject
而不将其转换为String
。杰克逊将负责转换。
@POST
@Consumes(MediaType.APPLICATION_JSON)
@Produces(MediaType.APPLICATION_JSON)
@Path("foo")
public Object foo(Model bar) throws CustomException {
// do parsing and return response
JSONObject response = fooBar.handleRequest(bar);
return response;
}