【发布时间】:2012-06-20 18:10:34
【问题描述】:
在我的 Jersey Rest Service 中,我尝试创建一个实体标签:
String content = 12sdfs-345dsdfsdf-231yscysd;
String createdContent = create(content);
return Response.created(createdUri).entity(createdContent).build();
就像它在球衣文档中所写的那样。但是createdContent 是null。怎么了?
完整代码为:
@POST
@Consumes("application/x-www-form-urlencoded")
public Response postObject(@FormParam("number") int number) {
ObjectDTO c = new ObjectDTO();;
c.setNumber(number);
String generatedId = generateID();
c.setId(generatedId);
c.setOwner(sec.getUserPrincipal().getName());
return postAndGetResponse(c);
}
private Response postAndGetResponse(ObjectDTO object) {
Response res;
System.out.println(object);
if(ObjectDAO.instance.getObjectDao().containsKey(object.getId())) {
res = Response.serverError().status(409).build();
} else {
System.out.println(object);
System.out.println(object.getId());
String createdContent = create(object.getId());
System.out.println(createdContent);
res = Response.created(uriInfo.getAbsolutePath()).entity(createdContent).build();
ObjectDAO.instance.getObjectDao().put(object.getId(), object);
}
return res;
}
编辑:
http://jersey.java.net/nonav/documentation/latest/jax-rs.html#d4e188
第 2.5 章
【问题讨论】:
-
我太傻了。 create 方法创建了一个函数存根。没有注意到这一点......那么我如何创建我的实体标签以将其放入响应中?球衣文档只是说创建(字符串)......但没有关于这个函数。
标签: java http jersey uri response