Java EE 스펙에 대한 웹 서비스

Java™ EE(Java Platform, Enterprise Edition)용 웹 서비스 스펙은 Java 언어를 기반으로 웹 서비스를 구현하기 위한 프로그래밍 모델 및 런타임 아키텍처를 정의합니다. Java EE용 웹 서비스 스펙의 또 다른 이름은 JSR(Java Specification Requirements) 109입니다. 스펙에는 웹 서비스 개발 및 구현을 위한 개방형 표준이 포함됩니다.

Java EE용 웹 서비스 스펙은 Java EE 기술을 기반으로 하며 웹 서비스와 클라이언트에 대해 확장 가능하고 안전한 환경 내에서 Application Server 간 상호 운용 가능하고 이식 가능한 방법으로 JAX-WS(Java API for XML Web Services) 및 JAX-RPC(Java API for XML-based RPC) 프로그래밍 모델을 지원합니다. 이 스펙은 WSDL(Web Services Description Language) 및 SOAP를 포함하여 웹 서비스에 대한 업계 표준을 기반으로 하며 웹 서비스의 개발과 배치를 설명합니다.

Java EE 기술을 다양한 방법으로 웹 서비스와 통합할 수 있습니다. Java EE 컴포넌트를 웹 서비스로 표시할 수 있습니다(예: JavaBeans 및 엔터프라이즈 Bean). Java EE 컴포넌트를 웹 서비스로 표시하면 Java 코드로 쓰여진 클라이언트와 Java 코드로 쓰여지지 않은 기존의 웹 서비스 클라이언트가 이러한 서비스에 액세스할 수 있습니다. Java EE 컴포넌트는 또한 웹 서비스 클라이언트의 역할을 할 수도 있습니다.

Java EE용 웹 서비스 스펙은 서로 다른 유형의 언어, 운영 체제 및 소프트웨어가 인터넷을 통해 끊임없이 통신할 수 있는 개방형 표준을 제공하므로 웹 기반 프로그래밍에서 선호되는 플랫폼입니다.

Java 애플리케이션이 웹 서비스 클라이언트의 역할을 하기 위해서는 WSDL 파일과 Java 애플리케이션 사이의 맵핑이 존재해야 합니다. JAX-WS 애플리케이션의 경우 맵핑은 어노테이션을 사용하여 정의됩니다. 또는 webservices.xml 배치 디스크립터를 사용하여 WSDL 파일의 위치를 지정하고 @WebServices 어노테이션에 정의된 값을 대체할 수도 있습니다. JAX-RPC 애플리케이션의 경우 JAX-RPC 맵핑 파일을 정의해야 합니다. WSDL 파일과 웹 서비스 애플리케이션 사이에 정의된 맵핑에 대해 자세히 알아 보려면 사용된 프로그래밍 모델에 따라 API 문서 및 웹 서비스 스펙에 있는 JAX-WS 스펙 또는 JAX-RPC 스펙을 참조하십시오.

컴포넌트의 인터페이스와 바인딩 정보를 WSDL 파일에 지정하고 서비스 요청을 승인할 수 있도록 애플리케이션 서버 인프라를 디자인하여 웹 서비스를 구현하는 데 Java 컴포넌트를 사용할 수 있습니다.

포함된 전체 프로세스는 Java EE용 웹 서비스 스펙에 기반을 두고 있습니다.

이 스펙은 웹 서비스용 webservices.xml 배치 디스크립터를 정의합니다. webservices.xml 배치 디스크립터 파일은 Java EE용 웹 서비스 사용 가능 컨테이너에 배치할 수 있는 웹 서비스 세트를 정의합니다.

JAX-WS 웹 서비스의 경우, 어노테이션을 사용하여 배치 디스크립터 파일에 포함된 모든 정보를 지정할 수 있기 때문에 webservices.xml 배치 디스크립터를 선택적으로 사용할 수 있습니다. 배치 디스크립터 파일을 사용하여 기존 JAX-WS 어노테이션을 기능 보강하거나 대체할 수 있습니다. webservices.xml 배치 디스크립터에 정의한 정보는 어노테이션으로 지정된 모든 해당 정보를 대체합니다.

예를 들어, JAX-WS 웹 서비스용 서비스 구현 클래스에 다음과 같이 @WebService 어노테이션이 포함되는 경우:
@WebService(wsdlLocation=”http://myhost.com/location/of/the/wsdl/ExampleService.wsdl”)
webservices.xml이 다음과 같이 WSDL 문서에 다른 파일 이름을 지정하는 경우
<webservices>
<webservice-description>
<webservice-description-name>ExampleService</webservice-description-name>
<wsdl-file>META-INF/wsdl/ExampleService.wsdl</wsdl-file>
…
</webservice-description>
</webservices>
그리고, 배치 디스크립터 META-INF/wsdl/ExampleService.wsdl에 지정된 값이 어노테이션 값을 대체하는 경우.

웹 서비스 배치 디스크립터 파일에 지정된 값과 @WebService 및 @WebServiceProvider 어노테이션의 속성 사이의 상관에 대한 자세한 내용은 Java EE용 웹 서비스 스펙의 5절을 참조하십시오.

JAX-RPC 웹 서비스의 경우 webservices.xml 배치 디스크립터 파일에 배치 특성을 정의해야 합니다.

다음과 같은 다양한 요소를 배치 디스크립터에 제공해야 합니다.
  • 포트 이름
  • 포트 서비스 구현
  • 포트 서비스 엔드포인트 인터페이스
  • 포트 WSDL 정의
  • 포트 QName
  • JAX-WS 웹 서비스에 대한 MTOM/XOP 지원
  • JAX-WS 웹 서비스에 대한 프로토콜 바인딩
  • JAX-RPC 맵핑
  • 핸들러(선택사항)
  • 서블릿 맵핑(선택사항)
EJB(Enterprise JavaBeans) 2.1 스펙에는 또한 세션 Bean에서 개발된 웹 서비스의 경우 EJB 배치 디스크립터 ejb-jar.xml에 서비스 엔드포인트 요소가 들어 있어야 한다고 명시되어 있습니다. 서비스 엔드포인트 값은 webservices.xml 배치 디스크립터의 값과 동일해야 합니다.

지원되는 표준 및 스펙의 전체 목록은 웹 서비스 스펙과 API 문서를 참조하십시오.


주제 유형을 표시하는 아이콘 개념 주제



시간소인 아이콘 마지막 업데이트 날짜: last_date
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=cwbs_j2ee
파일 이름:cwbs_j2ee.html