Javax JSON Response仅适用于“.toString”

时间:2016-06-16 10:03:39

标签: java json jackson

我有以下问题。如果我返回声明,它就会起作用:

@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对象。 到目前为止找不到任何答案...

有人知道为什么吗?

1 个答案:

答案 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;
  }