我有一个情况,在其中调用一个方法,该方法触发异步HTTP REST调用(稍后将状态发送到另一个端点),然后再继续执行。我希望该方法等待,直到我收到来自端点的响应,检查我得到的状态并继续执行。我正在寻找Java中可行的解决方案。任何伪代码或实现都将很有帮助。
在此处看到了类似的情况,但对其不太了解,是否容易实现。 实现细节 我有一个JAX-RS端点来处理异步响应,如下所示:
在此处看到了类似的情况,但对其不太了解,是否容易实现。 实现细节 我有一个JAX-RS端点来处理异步响应,如下所示:
@POST
@Path("/status")
@Consumes("application/xml")
public Response processConfigStatus(@Context UriInfo uriInfo, ConfigStatus configStatus)
{
// process Status got from the async REST call
return ResponseHelper.createNoContentResponse();
}
处理和管理的类
Class ProcessData{
public void updateData()
checktStatus(uri);
update();// should wait untill the processConfigStatus() endpoint gives status
}
private checktStatus(String uri){
// makes a REST call to a URI using a JAX-RS webclient or a httpclient this returns HTTP 200 or 204 code immediatley. And then the Server process the request asynchronously and gives back the status to JAX-RS endpoint(/status).
post(uri);
}
}
从另一个类调用方法
ProcessData pd = new ProcessData()
pd.updateData();