我在RESTful中有这个POST方法:
@POST
@Produces("application/json")
@Consumes("application/json")
public String doPostJson(String string) {
...
}
通常它获取JSON并返回JSON。如果我在接收参数中遇到错误的JSON,我想返回错误代码" 400 Bad Request"。我怎么能这样做?
感谢。
答案 0 :(得分:1)
当您收到错误的JSON时,可以从代码中抛出WebApplicationException
。如果您在其他地方也使用此异常,可能最好扩展WebApplicationException
。
throw new WebApplicationException(Response.Status.BAD_REQUEST);
您可以在此处查看有关WebApplicationException
的详细信息:
http://docs.oracle.com/javaee/6/api/javax/ws/rs/WebApplicationException.html
此处Response.Status
的列表:
http://docs.oracle.com/javaee/6/api/javax/ws/rs/core/Response.Status.html
SO的另一个好读物与此相关:
JAX-RS / Jersey how to customize error handling?