17.2. 소비자 엔드 포인트 구성


17.2.1. 개요

JAX-WS 소비자 엔드포인트는 jaxws:client 요소를 사용하여 구성됩니다. 요소의 특성은 소비자를 생성하는 데 필요한 기본 정보를 제공합니다.

WS-RM과 같은 다른 기능을 사용자에게 jaxws:client 요소에 자식을 추가합니다. 하위 요소는 또한 끝점의 로깅 동작을 구성하고 엔드포인트의 구현에 다른 속성을 삽입하는 데 사용됩니다.

17.2.2. 기본 설정 속성

표 17.4. “JAX-WS Consumer를 구성하는 데 사용되는 속성” 에 설명된 속성은 JAX-WS 소비자를 구성하는 데 필요한 기본 정보를 제공합니다. 구성하려는 특정 속성에 대한 값만 제공해야 합니다. 대부분의 속성은 합리적인 기본값이 있거나, 끝점의 계약에서 제공하는 정보에 의존합니다.

표 17.4. JAX-WS Consumer를 구성하는 데 사용되는 속성
속성설명

주소

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

bindingId

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

bus

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

endpointName

소비자가 요청하는 서비스에 대한 wsdl:port 요소의 name 속성 값을 지정합니다. ns:name 형식을 사용하여 QName으로 지정됩니다. 여기서 nswsdl:port 요소의 네임스페이스입니다.

serviceName

소비자가 요청하는 서비스에 대한 wsdl:service 요소의 name 속성 값을 지정합니다. ns:name 형식을 사용하여 QName으로 지정됩니다. 여기서 nswsdl:service 요소의 네임스페이스입니다.

사용자 이름

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

암호

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

serviceClass

서비스 엔드포인트 인터페이스(SEI)의 이름을 지정합니다.

wsdlLocation

끝점의 WSDL 계약의 위치를 지정합니다. WSDL 계약의 위치는 클라이언트가 배포된 폴더를 기준으로 합니다.

name

소비자가 요청하는 서비스에 대한 wsdl:port 요소의 stringified QName을 지정합니다. {ns}localPart 형식을 사용하여 QName으로 지정됩니다. 여기서 nswsdl:port 요소의 네임스페이스이고 localPartwsdl:port 요소의 name 속성 값입니다.

abstract

빈이 추상 빈인지 여부를 지정합니다. 추상화 빈은 구체적인 빈 정의를 위해 부모 역할을 하며 인스턴스화되지 않습니다. 기본값은 false입니다. 이 값을 true 로 설정하면 빈 공장이 빈을 인스턴스화하지 않도록 지시합니다.

depends-on

끝점이 인스턴스화되기 전에 종속되는 빈 목록을 지정합니다.

createdFromAPI

Service.getPort() 와 같은 Apache CXF API를 사용하여 빈을 만들도록 지정합니다.

기본값은 false입니다.

이 값을 true 로 설정하면 다음이 수행됩니다.

  • .jaxws-client 를 해당 ID에 추가하여 빈의 내부 이름을 변경합니다.
  • 빈을 추상적으로 만듭니다.

표 17.4. “JAX-WS Consumer를 구성하는 데 사용되는 속성” 에 나열된 속성 외에도 여러 xmlns:shortName특성을 사용하여 endpointNameserviceName 속성에 사용되는 네임스페이스를 선언해야 할 수 있습니다.

17.2.3. 기능 추가

사용자에게 기능을 추가하거나 고급 구성을 수행하려면 구성에 하위 요소를 추가해야 합니다.

자식 요소를 사용하면 다음을 수행할 수 있습니다.

표 17.5. “Consumer Endpoint 구성을 위한 요소” JAX-WS 소비자를 구성하는 데 사용할 수 있는 자식 요소에 대해 설명합니다.

표 17.5. Consumer Endpoint 구성을 위한 요소
요소설명

jaxws:binding

끝점에서 사용하는 메시지 바인딩을 구성하는 빈을 지정합니다. 메시지 바인딩은 org.apache.cxf.binding.BindingFactory 인터페이스의 구현을 사용하여 구성됩니다.[a]

jaxws:dataBinding

끝점에서 사용하는 데이터 바인딩을 구현하는 클래스를 지정합니다.Specifies the class implementing the data binding used by the endpoint. 포함된 빈 정의를 사용하여 이 값을 지정합니다. JAXB 데이터 바인딩을 구현하는 클래스는 org.apache.cxf.jaxb.JAXBDataBinding 입니다.

jaxws:features

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

jaxws:handlers

메시지 처리를 위한 JAX-WS Handler 구현 목록을 지정합니다. JAX-WS Handler 구현 방법에 대한 자세한 내용은 43장. 핸들러 작성 을 참조하십시오.

jaxws:inInterceptors

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

jaxws:inFaultInterceptors

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

jaxws:outInterceptors

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

jaxws:outFaultInterceptors

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

jaxws:properties

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

jaxws:conduitSelector

클라이언트가 사용할 org.apache.cxf.endpoint.ConduitSelector 구현을 지정합니다. ConduitSelector 구현은 아웃바운드 요청을 처리하는 데 사용되는 Conduit Selector 개체를 선택하는 데 사용되는 기본 프로세스를 재정의합니다.

[a] SOAP 바인딩은 soap:soapBinding 빈을 사용하여 구성됩니다.

17.2.4. 예제

예 17.4. “간단한 소비자 구성” 간단한 소비자 구성을 보여줍니다.

예 17.4. 간단한 소비자 구성

<beans ...
  xmlns:jaxws="http://cxf.apache.org/jaxws"
  ...
  schemaLocation="...
    http://cxf.apache.org/jaxws http://cxf.apache.org/schemas/jaxws.xsd
    ...">
  <jaxws:client id="bookClient"
                serviceClass="org.apache.cxf.demo.BookClientImpl"
                address="http://localhost:8080/books"/>
  ...
</beans>

17.2.5. JAX-WS 소비자에 대한 스키마 유효성 검사 활성화

JAX-WS 소비자에서 스키마 유효성 검사를 활성화하려면 jaxws:client 요소(예:)의 jaxws:properties 하위 요소에서 schema-validation-enabled 속성을 설정합니다.

<jaxws:client name="{http://apache.org/hello_world_soap_http}SoapPort"
    createdFromAPI="true">
    <jaxws:properties>
        <entry key="schema-validation-enabled" value="BOTH" />
    </jaxws:properties>
</jaxws:client>

schema-validation-enabled 속성의 허용되는 값 목록은 24.3.4.7절. “스키마 유효성 검사 유형 값” 을 참조하십시오.

Red Hat logoGithubRedditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

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

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

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

Red Hat 소개

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

© 2024 Red Hat, Inc.