18.2. Cryostat-RS 클라이언트 끝점 구성


18.2.1. Cryostat-RS 클라이언트 끝점 정의

18.2.1.1. 클라이언트 프록시 삽입

XML 언어(Blueprint XML 또는 Spring XML)에서 클라이언트 프록시 빈을 인스턴스화하는 주요 지점은 클라이언트 프록시를 사용하여 REST 서비스를 호출할 수 있는 다른 Quarkus에 삽입하는 것입니다. XML에서 클라이언트 프록시 빈을 생성하려면 jaxrs:client 요소를 사용합니다.

18.2.1.2. 네임스페이스

Cryostat-RS 클라이언트 끝점은 서버 끝점과 다른 XML 네임스페이스를 사용하여 정의됩니다. 다음 표에서는 어떤 XML 언어에 사용할 네임스페이스를 보여줍니다.

XML 언어클라이언트 끝점의 네임스페이스

Blueprint

http://cxf.apache.org/blueprint/jaxrs-client

Spring

http://cxf.apache.org/jaxrs-client

18.2.1.3. 기본 클라이언트 끝점 정의

다음 예제에서는 블루프린트 XML 또는 Spring XML에서 클라이언트 프록시 빈을 생성하는 방법을 보여줍니다.

<jaxrs:client id="restClient"
       address="http://localhost:8080/test/services/rest"
       serviceClass="org.apache.cxf.systest.jaxrs.BookStoreJaxrsJaxws"/>

기본 클라이언트 끝점을 정의하려면 다음 속성을 설정해야 합니다.

id
클라이언트 프록시의 Cryostat ID를 사용하여 클라이언트 프록시를 XML 구성의 다른 빈에 삽입할 수 있습니다.
address
address 속성은 REST 호출의 기본 URL을 지정합니다.
serviceClass
serviceClass 속성은 루트 리소스 클래스( @Path)를 지정하여 REST 서비스에 대한 설명을 제공합니다. 실제로 이는 서버 클래스이지만 클라이언트에서 직접 사용하지는 않습니다. 지정된 클래스는 클라이언트 프록시를 동적으로 구성하는 데 사용되는 메타데이터(Java reflect 및 Cryostat-RS 주석을 통해)에만 사용됩니다.

18.2.1.4. 헤더 지정

다음과 같이 jaxrs:headers 하위 요소를 사용하여 클라이언트 프록시 호출에 HTTP 헤더를 추가할 수 있습니다.

<jaxrs:client id="restClient"
       address="http://localhost:8080/test/services/rest"
       serviceClass="org.apache.cxf.systest.jaxrs.BookStoreJaxrsJaxws"
       inheritHeaders="true">
       <jaxrs:headers>
           <entry key="Accept" value="text/xml"/>
       </jaxrs:headers>
</jaxrs:client>

18.2.2. jaxrs:client 속성

18.2.2.1. 속성

표 18.3. “Cryostat-RS 클라이언트 끝점 속성” jaxrs:client 요소에서 사용할 수 있는 속성을 설명합니다.

표 18.3. Cryostat-RS 클라이언트 끝점 속성
속성설명

address

소비자가 요청할 끝점의 HTTP 주소를 지정합니다. 이 값은 계약에 설정된 값을 재정의합니다.

bindingId

소비자가 사용하는 메시지 바인딩의 ID를 지정합니다. 유효한 바인딩 ID 목록은 23장. Apache CXF 바인딩 ID 에 제공됩니다.

버스

엔드포인트를 관리하는 버스를 구성하는 Spring 8080의 ID를 지정합니다.

inheritHeaders

이 프록시에서 하위 리소스 프록시를 생성하는 경우 이 프록시에 설정된 헤더를 상속할지 여부를 지정합니다. 기본값은 false 입니다.

사용자 이름

간단한 사용자 이름/암호 인증에 사용되는 사용자 이름을 지정합니다.

암호

간단한 사용자 이름/암호 인증에 사용되는 암호를 지정합니다.

modelRef

모델 스키마를 클래스 경로 리소스로 지정합니다(예: 양식 classpath:/path/to/model.xml의 URL). Cryostat-RS 모델 스키마를 정의하는 방법에 대한 자세한 내용은 18.3절. “모델 스키마를 사용하여 REST 서비스 정의” 을 참조하십시오.

serviceClass

서비스 인터페이스의 이름 또는 @PATH주석이 달린 리소스 클래스를 지정하고 Cryostat-RS 서버 구현에서 다시 사용합니다. 이 경우 지정된 클래스는 직접 호출되지 않습니다 (실제로 서버 클래스임). 지정된 클래스는 클라이언트 프록시를 동적으로 구성하는 데 사용되는 메타데이터(Java reflect 및 Cryostat-RS 주석을 통해)에만 사용됩니다.

serviceName

JMS 전송이 사용되는 특수 경우, QName( format ns:name)에 대한 QName 서비스를 지정합니다. 자세한 내용은 “JMS 전송 사용”의 내용을 참조하십시오.

threadSafe

클라이언트 프록시가 스레드로부터 안전한지 여부를 지정합니다. 기본값은 false 입니다.

transportId

비표준 전송 계층(HTTP 대신)을 선택합니다. 특히 이 속성을 http://cxf.apache.org/transports/jms 로 설정하여 JMS 전송을 선택할 수 있습니다. 자세한 내용은 “JMS 전송 사용”의 내용을 참조하십시오.

abstract

(spring만 해당) 빈이 추상 빈인지 여부를 지정합니다. 추상 빈은 구체적인 8080 정의에 대해 상위 역할을 하며 인스턴스화되지 않습니다. 기본값은 false입니다. true 로 설정하면 Cryostat 팩토리에서 8080을 인스턴스화하지 않도록 지시합니다.

Dependent-on

(spring only) 끝점이 인스턴스화되기 전에 인스턴스화되는 빈 목록을 지정합니다.

18.2.3. jaxrs:client child Cryostat

18.2.3.1. 하위 요소

표 18.4. “Cryostat-RS 클라이언트 끝점 child Cryostat” jaxrs:client 요소의 하위 요소를 설명합니다.

표 18.4. Cryostat-RS 클라이언트 끝점 child Cryostat
element설명

jaxrs:executor

 

jaxrs:features

Apache CXF의 고급 기능을 구성하는 빈 목록을 지정합니다. Quarkus 참조 목록 또는 포함된 빈 목록을 제공할 수 있습니다.

jaxrs:binding

사용되지 않음.

jaxrs:dataBinding

끝점에서 사용하는 데이터 바인딩을 구현하는 클래스를 지정합니다. 포함된 빈 정의를 사용하여 지정됩니다. 자세한 내용은 “데이터 바인딩 지정” 에서 참조하십시오.

jaxrs:inInterceptors

인바운드 응답을 처리하는 인터셉터 목록을 지정합니다. 자세한 내용은 VII 부. Apache CXF Interceptors 개발 에서 참조하십시오.

jaxrs:inFaultInterceptors

인바운드 오류 메시지를 처리하는 인터셉터 목록을 지정합니다. 자세한 내용은 VII 부. Apache CXF Interceptors 개발 에서 참조하십시오.

jaxrs:outInterceptors

아웃바운드 요청을 처리하는 인터셉터 목록을 지정합니다. 자세한 내용은 VII 부. Apache CXF Interceptors 개발 에서 참조하십시오.

jaxrs:outFaultInterceptors

아웃바운드 오류 메시지를 처리하는 인터셉터 목록을 지정합니다. 자세한 내용은 VII 부. Apache CXF Interceptors 개발 에서 참조하십시오.

jaxrs:properties

끝점에 전달되는 속성의 맵을 지정합니다.

jaxrs:providers

이 엔드포인트에 하나 이상의 사용자 지정 Cryostat-RS 공급자를 등록할 수 있습니다. 이 요소의 하위 항목은 요소의 인스턴스 또는 (ref 요소) Cryostat-RS 공급자에 대한 참조입니다.

jaxrs:modelBeans

리소스 모델의 기본 요소인 하나 이상의 org.apache.cxf.jaxrs.model.UserResource 빈에 대한 참조 목록으로 구성됩니다(Jax rs:resource 요소에 해당). 자세한 내용은 18.3절. “모델 스키마를 사용하여 REST 서비스 정의”의 내용을 참조하십시오.

jaxrs:model

이 끝점에서 리소스 모델을 직접 정의합니다(즉, jaxrs:model 요소가 하나 이상 포함된 jaxrs:resource 요소). 자세한 내용은 18.3절. “모델 스키마를 사용하여 REST 서비스 정의”의 내용을 참조하십시오.

jaxrs:headers

발신 메시지의 헤더를 설정하는 데 사용됩니다. 자세한 내용은 “헤더 지정”의 내용을 참조하십시오.

jaxrs:schemaLocations

XML 메시지 내용을 검증하는 데 사용되는 하나 이상의 XML 스키마를 지정합니다. 이 요소는 각각 XML 스키마 파일의 위치(일반적으로 클래스 경로 URL)를 지정하는 하나 이상의 jaxrs:schemaLocation 요소를 포함할 수 있습니다. 자세한 내용은 “스키마 검증”의 내용을 참조하십시오.

Red Hat logoGithubRedditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

Red Hat을 사용하는 고객은 신뢰할 수 있는 콘텐츠가 포함된 제품과 서비스를 통해 혁신하고 목표를 달성할 수 있습니다.

보다 포괄적 수용을 위한 오픈 소스 용어 교체

Red Hat은 코드, 문서, 웹 속성에서 문제가 있는 언어를 교체하기 위해 최선을 다하고 있습니다. 자세한 내용은 다음을 참조하세요.Red Hat 블로그.

Red Hat 소개

Red Hat은 기업이 핵심 데이터 센터에서 네트워크 에지에 이르기까지 플랫폼과 환경 전반에서 더 쉽게 작업할 수 있도록 강화된 솔루션을 제공합니다.

© 2024 Red Hat, Inc.