我正在研究提供JSON响应的Restful Web Services
@GET
@Produces("application/json")
public Site getSite() {
return (Site)siteFacade.find(Integer.parseInt(id));
}
这是我通过id
获取网站信息的方法当没有输入id = 11
的数据时,我得到了以下输出GET Request Failed Request Failed --> Status: (204) Response: {
}
现在我希望该响应字段包含错误代码= 204的正确消息,如“无效请求”或“id不存在”,其中需要进行准确更改,请帮助我们
答案 0 :(得分:0)
这个怎么样。
通常情况下,如果您要求某些内容,但未找到,则会指定404(这也是RESTful精神):
@GET
@Produces("application/json")
public Site getSite() {
Site site = (Site) siteFacade.find(Integer.parseInt(id));
if (site == null) {
return Response.status(Response.Status.NOT_FOUND).build();
}
return site;
}
如果你需要在响应正文中留言,你会添加这样的内容,我想:
@GET
@Produces("application/json")
public Site getSite() {
Site site = (Site) siteFacade.find(Integer.parseInt(id));
if (site == null) {
return Response.status(Response.Status.NOT_FOUND).entity("No item with this id found").build();
}
return site;
}