49.5. 클라이언트 끝점 구성
49.5.1. 개요
기능 및 공급자를 등록하고 구성하여 기본 javax.ws.rs.client.client.Client
오브젝트의 기능을 보강할 수 있습니다.
49.5.2. 예
다음 예제에서는 로깅 기능, 사용자 지정 엔터티 공급자 및 prettyLogging
속성을 true
로 설정하도록 구성된 클라이언트를 보여줍니다.
// Java import javax.ws.rs.client.ClientBuilder; import javax.ws.rs.client.Client; import org.apache.cxf.feature.LoggingFeature; ... Client client = ClientBuilder.newClient(); client.register(LoggingFeature.class) .register(MyCustomEntityProvider.class) .property("LoggingFeature.prettyLogging","true");
49.5.3. 오브젝트 등록을 위한 구성 가능한 API
Client
클래스는 register
메서드의 여러 변형을 제공하는 오브젝트 등록에 대해 Configurable
API를 지원합니다. 대부분의 경우 다음 예와 같이 클래스 또는 오브젝트 인스턴스를 등록합니다.
client.register(LoggingFeature.class) client.register(new LoggingFeature())
레지스터
변형에 대한 자세한 내용은 Configurable
의 참조 문서를 참조하십시오.
49.5.4. 클라이언트에서 구성할 수 있는 것은 무엇입니까?
클라이언트 끝점의 다음 측면을 구성할 수 있습니다.
- 기능
- 공급자
- 속성
- 필터
- 인터셉터
49.5.5. 기능
javax.ws.rs.core.Feature
는 다른 기능 또는 기능을 Cryostat-RS 클라이언트에 추가하는 플러그인입니다. 종종 기능은 필요한 기능을 제공하기 위해 하나 이상의 인터셉터를 설치합니다.
49.5.6. 공급자
공급자는 매핑 기능을 제공하는 특정 종류의 클라이언트 플러그인입니다. Cryostat-RS 2.0 사양은 다음과 같은 유형의 공급자를 정의합니다.
- 엔터티 공급자
- 엔터티 공급자는 특정 미디어 유형 간에 Java 유형 간 매핑 기능을 제공합니다. 자세한 내용은 49.4절. “요청 및 응답 구문 분석” 에서 참조하십시오.
- 예외 매핑 공급자
-
예외 매핑 공급자는 확인된 런타임 예외를
Response
인스턴스에 매핑합니다. - 컨텍스트 공급자
- 컨텍스트 공급자는 리소스 클래스 및 기타 서비스 공급자에 컨텍스트를 제공하는 데 사용됩니다.
49.5.7. 필터
Cryostat-RS 2.0 필터는 메시지 처리 파이프라인의 다양한 지점(extensionpoint)에서 URI, 헤더 및 기타 컨텍스트 데이터에 액세스할 수 있는 플러그인입니다. 자세한 내용은 61장. Cryostat-RS 2.0 필터 및 인터셉터의 내용을 참조하십시오.
49.5.8. 인터셉터
Cryostat-RS 2.0 인터셉터는 읽거나 쓸 때 요청 또는 응답의 메시지 본문에 액세스할 수 있는 플러그인입니다. 자세한 내용은 61장. Cryostat-RS 2.0 필터 및 인터셉터의 내용을 참조하십시오.
49.5.9. 속성
클라이언트에서 하나 이상의 속성을 설정하면 등록된 기능 또는 등록된 공급자의 구성을 사용자 지정할 수 있습니다.
49.5.10. 기타 구성 가능한 유형
javax.ws.rs.client.rs.rs.
) 오브젝트뿐만 아니라 client.Client
BuilderWebTarget
오브젝트도 구성할 수 있습니다. WebTarget
오브젝트의 구성을 변경하면 기본 클라이언트 구성이 깊이 복사되어 새 WebTarget
구성을 제공합니다. 따라서 원래 Client
오브젝트의 구성을 변경하지 않고 WebTarget
오브젝트의 구성을 변경할 수 있습니다.