0
我有一種情況,我需要爲接收到的每個請求返回「接受」響應,並稍後將實際響應發佈到服務之外的單獨端點。如何在澤西島的過濾器發送響應後繼續進行請求處理?
爲了實現「接受」的響應,我實現了一個過濾器。
public class AcknowledgementFilter implements ContainerRequestFilter{
@Override
public void filter(ContainerRequestContext containerRequestContext) throws IOException {
containerRequestContext.abortWith(Response.accepted().build());
// call Resource method in new Thread() . <------ ?
}
}
服務端點的執行情況:
@Path("/vendor")
public class VendorHandler {
@POST
public void addVendor(VendorRequest addVendorRequest)){
vendor = new Vendor();
Client.publish(vendor); // publish request to an endpoint
return null;
}
如何調用VendorHandler的addVendor(或任何方法取決於請求)從確認過濾器?
是否有任何其他方式來爲每個請求實現接受的響應,然後分別處理請求?
我不認爲資源方法會被調用,因爲響應已經發送到過濾器中的客戶端。 –
我認爲'AsyncResponse'的意思是刪除過濾器的需要,恕我直言,從來沒有打算處理這種情況下:) –