Tab navigation
- SOA
- Web services
- Info Mgmt
- WebSphere- selected tab,
Page navigation
WebSphere® 웹 서비스 영역에는 웹 서비스를 개발, 테스트, 배포 및 사용하는 데 도움이 되는 다양한 기사, 튜토리얼, 코드 샘플, 로드맵 및 기타 다른 참고자료가 들어 있다. 이 페이지에서는 WebSphere가 웹 서비스를 어떻게 지원하는지 상위 레벨에서의 개요를 설명한다.
WebSphere에서의 웹 서비스란?
여러 WebSphere 제품에서 웹 서비스 기능을 제공한다. 그 중에서도 기본적인 제품은 WebSphere Application Server(이후로는 Application Server라고 함)와 WebSphere Application Server Network Deployment의 Web Services Gateway 컴포넌트이다. 그 외의 다른 제품으로는 WS-I를 준수하는 웹 서비스를 제공하고 사용할 수 있는 CICS® Transaction Server V3.1 for z/OS®, SOAP 메시지에 대한 지원을 제공하는 WebSphere Message Broker, 다수의 어댑터 중 하나를 통해 웹 서비스 연결 기능을 제공하는 WebSphere Business Integration Server 등이 있다. 이 기사에서는 특별히 WebSphere Application Server에서 제공하는 웹 서비스 기능에 초점을 맞춰 설명한다.
Application Server에 배포된 애플리케이션은 내장 웹 서비스 지원을 활용하여 산업 표준에 적합한 방식으로 원격 소비자에게 서비스를 노출할 수 있다. 이들 애플리케이션은 다른 기술로 구현된 다른 애플리케이션에서 제공하는 서비스를 검색하고 호출할 수도 있다.
WebSphere에서 웹 서비스를 사용하기 위한 요구 사항
WebSphere에서 웹 서비스를 실행하기 위한 기본적인 요구 사항은 다른 애플리케이션에 대한 요구 사항과 동일하다. 하지만, 웹 서비스 기술은 빠르게 발전하고 있고 WebSphere에서 웹 서비스를 제공해온 지난 4년 동안에도 크게 바뀌었다. 또한, 웹 서비스는 분산 기술이기 때문에 소비자와 공급자 모두에게 요구 사항이 있다. WS-I(Web Services Interoperability) 조직에서는 몇 가지 프로토콜 버전의 조합을 웹 서비스 소비자와 공급자가 호환성을 결정하는 데 도움을 주기 위한 프로파일로 정의했다. WebSphere의 버전이 서로 다른 경우, WebSphere가 소비자 또는 공급자 역할을 할 때 웹 서비스에 대한 지원 레벨도 다르다. 폭넓게 말해, 이런 지원은 WebSphere 5.0.2 이전 버전, WebSphere 5.0.2에서 WebSphere 5.1까지의 버전, WebSphere 6의 세 그룹으로 분류할 수 있다.
WebSphere 5.0.2 이전 버전
- 개요: 이 버전의 웹 서비스는 Application Server V4에서 도입되고 Application Server V5에서 제공되었다. WebSphere는 지금은 Apache SOAP라고 알려진 구현에서 함께 제공되었지만, 이들 WebSphere 버전에서 웹 서비스를 구현하는 경우에는 Apache Axis 구현의 사용을 고려해야 한다.
- 웹 서비스 스택: Apache SOAP
- 상호 운용성: WebSphere에서 이 버전의 웹 서비스 스택은 어떤 WS-I 프로파일도 준수하지 않으므로, 이 웹 서비스 스택의 용도는 WebSphere V5.0.2 이전 버전의 다른 구현과 통신하거나 다른 구현에서 철저한 테스트를 거친 후에만 사용하는 것으로 제한해야 한다. 다른 벤더 스택과의 제한적 상호 운용성이 가능하다.
- 툴링: 이 버전의 WebSphere를 위한 웹 서비스 소비자 및 공급자를 만들려면 WebSphere Studio Application Developer V5 이상을 사용하고 싶을 것이다.
WebSphere 5.0.2에서 WebSphere 5.1
- 개요: 이들 WebSphere 버전은 IBM 웹 서비스 스택의 제2세대의 덕을 많이 보았다.
- 웹 서비스 스택: IBM JAX-RPC 1.0 스택
- 상호 운용성: WebSphere에서 이 버전의 웹 서비스 스택은 WS-I 기본 프로파일 V1을 준수하므로, 다른 벤더의 웹 서비스 구현과의 기본적인 상호 운용이 가능하다. 제한적인 웹 서비스 보안 상호 운용이 가능하다.
- 툴링: 이 버전의 WebSphere를 위한 웹 서비스 소비자 및 공급자를 만들려면 WebSphere Studio Application Developer V5.12 이상을 사용한다.
WebSphere 6
- 개요: WebSphere V6에서의 웹 서비스 지원은 제3세대 IBM 웹 서비스 스택으로서, 이 분야에 적용되는 다수의 최신 표준을 지원한다.
- 웹 서비스 스택: IBM JAX-RPC 1.1 스택
- 상호 운용성: WebSphere에서 이 버전의 웹 서비스 스택은 WS-I 기본 프로파일 버전 1.1, WS-Security(UsernameToken 및 X509 토큰 지원 포함), WS-AtomicTransaction 및 WS-Addressing을 준수하므로, 다른 벤더의 웹 서비스 구현과의 적절한 상호 운용이 가능하다. 웹 서비스 보안 상호 운용이 가능하다.
- 툴링: 이 버전의 WebSphere를 위한 웹 서비스 소비자 및 공급자를 만들려면 Rational® Application Developer 버전 6 이상을 사용한다.
웹 서비스 소비자 및 공급자 애플리케이션을 빌드하여 WebSphere에 배포하는 방법
WebSphere 자체(WSDL2Java)나 선택한 다른 툴링과 함께 제공되는 명령행 도구를 사용하여 웹 서비스 클라이언트 애플리케이션을 빌드하여 WebSphere에 배포할 수 있지만, WebSphere에 배포할 애플리케이션 코드를 가장 생산적으로 빌드하는 방법은 Rational Software Development Platform에서 적절한 오퍼링을 사용하는 것이다. Rational 소프트웨어 개발 제품은 Eclipse 3.0을 기반으로 하고 J2EE와 호환되는 엔터프라이즈 애플리케이션 시스템을 만들고 유지 관리하기 위한 포괄적인 애플리케이션 개발 환경을 제공한다. 이 개발 환경에는 Eclipse에서는 지원하지 않는 기능이 많이 포함되어 있다.
다음은 제공되는 기능 중 몇 가지에 대한 설명이다.
서비스 공급자 작성
Rational Application Developer 도구를 사용하여 기존 Javabean, 엔터프라이즈 Bean, DADX 파일 및 URL에서는 상향식으로, WSDL에서는 하향식으로 웹 서비스를 작성, 배포, 테스트 및 게시할 수 있다. 웹 서비스에 손쉽게 액세스하기 위해 JavaBean 프록시와 같은 추가 아티팩트와 테스트 클라이언트의 자동 생성 기능을 지원하는 마법사가 제공된다.
Rational 도구에는 우선 WSDL에서 유형과 인터페이스를 정의한 후 WSDL에서 Java 아티팩트를 생성하는 모범 사례를 이용해 웹 서비스를 손쉽게 개발할 수 있도록 하기 위한 WSDL 편집기도 포함된다.
서비스 소비자 작성
웹 서비스 클라이언트 마법사나 명령행 도구를 사용하여 모든 웹 서비스에 대한 클라이언트를 작성한다. 웹 서비스 클라이언트를 작성하는 데는 WSDL 파일만 있으면 된다.
클라이언트 보안
웹 서비스 마법사와 배포 디스크립터 편집기를 사용하여 WebSphere Application Server 환경에 맞춰 웹 서비스 보안(WS-Security)을 구성할 수 있다.
웹 서비스 실행
다양한 WebSphere Application Server 버전, Tomcat 및 다른 테스트 환경에서 웹 서비스 공급자 및 소비자 컴포넌트를 실행한다. WebSphere 테스트 환경을 위한 배포 및 관리는 Application Developer로 통합된다.
웹 서비스 테스트
실행 중인 웹 서비스를 로컬 또는 원격으로 테스트한다. 로컬 테스트의 경우, WebSphere 테스트 환경을 사용할 수 있다. WebSphere 테스트 환경에는 완전한 WebSphere Application Server 런타임 환경이 포함된다. Rational Application Developer에서는 웹 서비스 테스트를 위한 다른 기능들이 제공된다.
웹 서비스 검색
UDDI(Universal Description, Discovery, and Integration) 레지스트리 또는 WSIL(Web Services Inspection Language) 사이트를 검색하여 통합할 웹 서비스를 찾는다. 웹 서비스 탐색기는 웹 서비스를 검색하는 데 필요한 기능을 제공한다.
웹 서비스 게시
웹 서비스 탐색기를 사용하여 UDDI V2 또는 V3 Business Registry에 웹 서비스를 게시한다.
기본 폼 빌드
WSDL 파일에서 JavaBean 및 EJB 기본 폼을 생성한다. 이는 프로젝트의 개발 및 테스트 단계를 진행하는 중에 도움이 될 수 있다. 예를 들어, 서비스가 정의되어 있지만(WSDL) 서비스 공급자 사이트에서 실행 중이지 않고 클라이언트를 테스트할 필요가 있을 때, 공급자를 에뮬레이트하기 위한 테스트 서비스 공급자를 작성할 수 있다.
웹 서비스 유효성 검증
WSDL 및 DADX 유효성 검증기를 사용하여 이런 유형의 파일에서 구조 및 시맨틱 문제가 있는지 검사한다. 이 기능은 서비스 공급자가 제공한 서비스 WSDL 파일이 유효한지 검사할 때 유용하다.
준수 여부 확인
웹 서비스 개발 환경에 맞춰 다른 WS-I 프로파일 준수 테스트 및 레벨을 정의할 수 있다. Rational Application Developer는 Simple SOAP Basic 1.0과 Attachment Profile 1.0에 대한 준수 여부를 확인할 수 있다.
웹 서비스를 작성하거나 변경할 때 WS-I 준수 테스터가 서비스를 분석하며, 구성에 따라 프로파일 준수 사항을 무시, 제안 또는 요구한다. 웹 서비스 환경 설정에서 이를 정의할 수 있다.
WSDL 파일 작업
Rational Application Developer에서는 다음과 같이 WSDL 파일로 작업하는 데 도움이 되는 기능과 마법사를 제공한다.
- 그래픽 편집기를 사용하여 템플리트에서 WSDL 파일을 작성하고 WSDL 요소(서비스, 포트, 포트 유형, 메시지)를 추가한다.
- WSDL 문서를 작성한다. 이때 JavaDoc 문서와 유사한 WSDL 파일에 대한 HTML 문서를 작성한다.
- WS-I를 준수하는지 WSDL 파일의 유효성을 검증한다.
웹 서비스 탐색
Rational Application Developer에서는 이제 웹 서비스들을 프로젝트 탐색기의 웹 서비스 그룹에 함께 모아 구성하므로, 웹 서비스를 찾아서 작업하기가 더 쉬워졌다.
아래 표는 웹 서비스 관련 기술과 Rational Application Developer V6에서 지원되는 스펙을 나타낸 것이다.
| Technology or specification | Version or level supported |
| HTTP/HTTPS | 1.0 및 1.1 |
| JMS | 1.1 |
| SOAP | 1.1 |
| SOAP Attachments | 1.0 |
| UDDI | 2.0 and 3.0 |
| WSDL | 1.1 |
| WSIL | 1.0 |
| WS-Security | OASIS Standard 1.0 |
| WS-I Basic Profile | 1.1.2 |
| WS-I Simple SOAP Binding Profile | 1.0.3 |
| WS-I Attachments Profile | 1.0 |
| JAX-RPC | 1.0 for J2EE 1.3 1.1 for J2EE 1.4 |
| Web Services for J2EE | WSEE 1.0 (JSR 109) for J2EE 1.3 WSEE 1.1 (JSR 921) for J2EE 1.4 |
Rational Application Developer는 다음 세 가지 웹 서비스 공급자 런타임 환경을 지원한다.
-
WebSphere 런타임 환경
이 런타임 환경은 프로덕션용으로 권장되는 환경이다. IBM에서는 WebSphere 런타임 환경만 완전히 지원한다. WebSphere 런타임 환경에는 복잡한 오브젝트, 엔터프라이즈 웹 서비스(EJB)에 대한 JSR 109 지원 및 SOAP over JMS 지원을 위해 특수 직렬 변환기 및 역직렬화기가 포함된다.
-
IBM SOAP 런타임 환경
이 런타임 환경은 WebSphere Studio Application Developer의 이전 릴리스(V5 및 이전 버전)에서 유일하게 지원되는 런타임 환경이었다. 이 런타임 환경은 이전 버전과의 호환성을 위한 목적으로만 사용해야 한다. IBM SOAP 런타임 환경에서는 Apache SOAP 2.3을 지원한다. 현재, SQL 문(DADX 파일)에서 DB2 웹 서비스에는 여전히 SOAP 런타임이 필요하다.
-
Apache Axis 1.0 런타임 환경
Apache Axis 1.0 런타임 환경은 Apache SOAP 구현의 세 번째 버전이다. Apache Axis는 (IBM SOAP4J로 시작한) Apache SOAP 구현에서부터 발전했다. Apache Axis 런타임은 WebSphere 프로덕션 환경에는 권장되지 않지만, Apache Tomcat 서버에 사용할 수 있다.
WebSphere 웹 서비스에 대한 자세한 정보를 얻을 수 있는 곳
developerWorks WebSphere Web Services zone에서는 개발자들이 WebSphere 웹 서비스를 시작하는 데 도움이 되는 수백 가지 참고자료를 제공한다.
웹 서비스를 지원하는 WebSphere 제품군에 대한 자세한 내용은 http://www.ibm.com/software/websphere/를 참조한다.
IBM Rational 제품 정보는 http://www.ibm.com/software/rational/을 참조한다.
Web Services Interoperability 조직에 대한 자세한 내용은 Web Services Interoperability 페이지를 참조한다.
Web Services Interoperability 조직에 대한 자세한 내용은 Web Services Interoperability 페이지를 참조한다.