0
我对Java和泽西都很陌生。现在,我想在发送响应之后使用球衣来实现额外处理的REST服务(具体来说,睡眠一段固定时间,然后在同一个servlet上下文中发出不同的REST请求,因此它不像REST代理)。我已经搜索了一段时间,但似乎都认为这是理所当然的,在方法结束时隐含地冲淡响应。这里是目前的代码与JAXB启用我努力工作。如何提交或刷新进程中的其余响应
@Path("/chat")
public class LoadSimulator {
@Context private UriInfo uriInfo;
@Path("/outbound/{senderAddress}/requests")
@POST
@Consumes({MediaType.APPLICATION_JSON, MediaType.APPLICATION_XML})
@Produces({MediaType.APPLICATION_JSON, MediaType.APPLICATION_XML})
public Response createOutboundSMSMessage(OutboundSMSMessageRequest inSmsReq, @PathParam("senderAddress") String senderAddress) throws JAXBException {
String requestId = UUID.randomUUID().toString();
URI uri = uriInfo.getAbsolutePathBuilder().path(requestId).build();
ObjectFactory factory = new ObjectFactory();
ResourceReference resourceReference = new ResourceReference();
resourceReference.setResourceURL(uri.toString());
JAXBElement<ResourceReference> inSmsResponse = factory.createResourceReference(resourceReference);
return Response.created(uri).entity(inSmsResponse).build();
//// want to flush or commit the response explicitly like:
// out.flush();
// out.close();
//// Then sleep for a few second and fire a new REST request
// sleep(5);
// ....
// ClientConfig config = new DefaultClientConfig();
// String response = r.path("translate").queryParams(params).get(String.class);
}
}
大脑,谢谢你的示例代码。我会研究它,以确保我完全明白你的意思,因为我的Java经验非常有限。 –