11장. Endpoints가 WSDL에서 정의되는 방법 이해

초록

끝점은 인스턴스화된 서비스를 나타냅니다. 바인딩과 끝점을 노출하는 데 사용되는 네트워킹 세부 정보를 결합하여 정의합니다.

11.1. 개요

엔드포인트는 서비스의 물리적 표현으로 간주될 수 있습니다. 서비스에서 사용하는 논리 데이터의 물리적 표현과 다른 엔드포인트에서 서비스를 연결하는 데 사용되는 물리적 연결 세부 정보를 정의하는 네트워킹 세부 정보 집합을 지정하는 바인딩을 결합합니다.

참고

CXF 공급자는 클라이언트에 해당하는 CXF 소비자의 서버입니다. CXF(camel-cxf) 구성 요소를 경로에서 시작 끝점으로 사용하는 경우 엔드포인트는 Camel 소비자와 CXF 공급자입니다. Camel CXF 구성 요소를 경로에서 종료 끝점으로 사용하는 경우 엔드포인트는 Camel 생산자와 CXF 소비자입니다.

11.2. 엔드 포인트 및 서비스

바인딩이 단일 인터페이스만 매핑할 수 있는 것과 동일한 방식으로 끝점은 단일 서비스에만 매핑할 수 있습니다. 그러나 서비스를 여러 끝점으로 표시할 수 있습니다. 예를 들어, 4개의 엔드포인트에서 표시되는 티켓 판매 서비스를 정의할 수 있습니다. 그러나 티켓 판매 서비스와 위젯 판매 서비스를 모두 나타내는 단일 엔드 포인트가 없었습니다.

11.3. WSDL 요소

엔드포인트는 WSDL 서비스 요소와 WSDL 포트 요소의 조합을 사용하여 계약에 정의됩니다. 서비스 요소는 관련 포트 요소의 컬렉션입니다. 포트 요소는 실제 엔드포인트를 정의합니다.

WSDL 서비스 요소에는 고유한 이름을 지정하는 단일 속성 이름 가 있습니다. 서비스 요소는 관련 포트 요소의 컬렉션의 부모 요소로 사용됩니다. WSDL은 포트 요소가 어떻게 관련되어 있는지에 대한 사양을 만들지 않습니다. 필요에 따라 포트 요소를 연결할 수 있습니다.You can associate the port elements in any manner you see fit.

WSDL 포트 요소에는 바인딩 특성이 있습니다. 이는 끝점에서 사용하는 바인딩을 지정하고 wsdl:binding 요소에 대한 참조입니다. 또한 모든 포트 간에 고유한 이름 을 제공하는 필수 속성인 name 속성도 포함합니다. port 요소는 끝점에서 사용하는 실제 전송 세부 정보를 지정하는 요소의 부모 요소입니다. 전송 세부 정보를 지정하는 데 사용되는 요소는 다음 섹션에서 설명합니다.

11.4. 계약에 끝점 추가

Apache CXF는 사전 정의된 서비스 인터페이스 및 바인딩 조합에 대해 끝점을 생성할 수 있는 명령줄 도구를 제공합니다.

이 도구는 귀하의 계약에 적절한 요소를 추가합니다. 그러나 끝점 작업을 정의하는 데 사용되는 다양한 전송 방법을 알고 있는 것이 좋습니다.

텍스트 편집기를 사용하여 계약에 끝점을 추가할 수도 있습니다. 계약을 직접 편집하면 계약이 유효한지 확인할 책임이 있습니다.

11.5. 지원되는 전송

엔드포인트 정의는 각 전송 Apache CXF에 대해 정의된 확장을 사용하여 빌드됩니다. 여기에는 다음 전송이 포함됩니다.

  • HTTP
  • CORBA
  • Java Messaging Service