48.5.4. 콜백 등록
48.5.4.1. 개요
호출이 완료되면 알림을 받기 위해 선택적으로 AsyncResponse
인스턴스에 콜백을 추가할 수 있습니다. 이 콜백을 호출할 수 있는 경우 처리에는 다음 두 가지 대체 지점이 있습니다.
- 요청 처리가 완료되면 응답이 이미 클라이언트로 다시 전송되었거나,
-
요청 처리가 완료되고 매핑되지 않은
Throwable
가 호스팅 I/O 컨테이너로 전파되었습니다.
48.5.4.2. CompletionCallback 인터페이스
완료 콜백을 추가하려면 다음과 같이 정의된 javax.ws.rs.container.CompletionCallback
인터페이스를 구현해야 합니다.
// Java package javax.ws.rs.container; public interface CompletionCallback { public void onComplete(Throwable throwable); }
일반적으로 throw 가능한
인수는 null
입니다. 그러나 요청 처리가 매핑되지 않은 예외가 발생한 경우 throw할 수 없는 예외 인스턴스가 throw됩니다.However, if the request processing resulted in an unmapped exception, throwable
contains the unmapped exception instance.
48.5.4.3. 완료 콜백 등록
완료 콜백을 구현한 후 레지스터 방법 중 하나를 호출하여 현재 AsyncResponse
오브젝트에 등록해야
합니다. 예를 들어, type 완료 콜백을 등록하려면 MyCompletionCallback
:
asyncResponse.register(new MyCompletionCallback());