EJB 웹 서비스 작성: 옵션 2

고려할 대체 옵션은 EJB 주위에 웹 서비스를 작성할 수 있게 하는 Rational® Application Developer 웹 서비스 도구입니다.

주: 이 메소드를 사용하여 이주를 시도하기 전에 http://publib.boulder.ibm.com/infocenter/rtnl0600/topic/com.ibm.etools.webservice.was.creation.ejb.ui.doc/tasks/twsejbw.html 사이트의 정보를 참조하십시오.
주: 이 옵션은 웹 서비스 마법사를 호출하기 전에 웹 서비스 런타임이 WebSphere® Integration Developer를 통해 구성되어야 합니다.
EJB 주위에 웹 서비스를 작성하려면 다음 단계를 수행하십시오.
  1. 서비스를 작성 중인 EJB용 컨테이너인 엔터프라이즈 응용프로그램 프로젝트를 마우스 오른쪽 단추로 클릭하십시오.
  2. 특성을 선택하고, 서버 특성으로 이동하여 대상 런타임WebSphere Process Server v6.0으로 설정되고 기본 서버가 설치된 WebSphere Process Server v6.0으로 설정되었는지 확인하십시오.
  3. 테스트 서버를 시작하고 이 응용프로그램을 서버에 배치하고 성공적으로 시작하는지 확인하십시오.
  4. J2EE Perspective에서 프로젝트 탐색기 보기의 EJB 프로젝트를 펼치십시오. 배치 설명자를 펼친 후 세션 Bean 카테고리를 펼치십시오. 웹 서비스를 생성하려는 Bean을 선택하십시오.
  5. 마우스 오른쪽 단추를 클릭하여 웹 서비스 > 웹 서비스 작성을 선택하십시오.
  6. 웹 서비스 유형에 대해 EJB 웹 서비스를 선택하고 바로 웹 서비스를 배치하려는 경우가 아니면 웹 프로젝트에서 웹 서비스 시작 옵션을 선택 취소하십시오. 다음을 클릭하십시오.
  7. 마우스 오른쪽 단추로 클릭한 EJB가 여기에 선택되어 있는지 확인하고 다음을 클릭하십시오.
  8. 이제 서비스 배치 옵션을 구성해야 합니다. 편집… 단추를 클릭하십시오. 서버 유형에 대해 WPS Server v6.0을 선택하고 웹 서비스 런타임에 대해 IBM WebSphere 및 J2EE 버전 1.4를 선택하십시오. 이를 수행하여 올바른 조합을 선택할 수 없는 경우 "이주 준비" 섹션에서 J2EE 프로젝트를 v1.4 레벨로의 이주에 대한 정보를 참조하십시오. 확인을 클릭하십시오.
  9. 서비스 프로젝트에 대해 EJB가 포함된 EJB 프로젝트의 이름을 입력하십시오. 또한 적합한 EAR 프로젝트를 선택하십시오. 다음을 클릭하십시오. 몇 분 정도 기다려야 할 수 있습니다.
  10. 웹 서비스 EJB 구성 패널에서 사용할 적당한 라우터 프로젝트를 선택하십시오. (작성할 라우터 웹 프로젝트의 이름을 선택하십시오. 이 프로젝트는 원래의 EJB와 동일한 엔터프라이즈 응용프로그램에 추가됩니다.) 원하는 전송(SOAP over HTTP 또는 SOAP over JMS)을 선택하십시오. 다음을 클릭하십시오.
  11. WSDL 정의를 포함할 WSDL 파일을 선택하십시오. 웹 서비스에서 공개하려는 메소드를 선택하고 적당한 스타일/인코딩(문서/리터럴, RPC/리터럴 또는 RPC/인코드)을 선택하십시오. 패키지에서 이름 공간으로 사용자 정의 맵핑 정의 옵션을 선택하고 EJB에 의해 사용되는 모든 Java™ 패키지에 대해 이주되는 EJB에 고유한 이름 공간(기본 이름 공간은 동일한 Java 클래스를 사용하는 다른 웹 서비스를 작성할 경우 충돌을 일으킬 수도 있는 패키지 이름에 고유합니다.)을 선택하십시오. 적합한 경우 다른 매개변수를 완료하십시오. 각 스타일/인코딩 조합에 제한사항이 있습니다. 자세한 정보는 http://publib.boulder.ibm.com/infocenter/rtnl0600/topic/com.ibm.etools.webservice.doc/ref/rlimit.html의 제한사항을 참조하십시오.
  12. 다음을 클릭하고 웹 서비스 패키지에서 이름 공간으로 맵핑 패널에서 추가 단추를 클릭한 다음 작성된 행에서 해당 EJB의 패키지 이름과 이 EJB를 고유하게 식별하는 사용자 정의 이름 공간을 입력하십시오. EJB 인터페이스에서 사용되는 모든 Java 패키지에 대해 맵핑을 계속 추가하십시오.
  13. 다음을 클릭하십시오. 몇 분 정도 기다려야 할 수 있습니다.
  14. 완료를 클릭하십시오. 마법사를 완료한 후 서비스 프로젝트가 EJB 서비스의 이용자인 경우 EJB 서비스를 설명하는 생성된 WSDL 파일을 비즈니스 통합 모듈 프로젝트에 복사해야 합니다. WebContent/WEB-INF/wsdl 폴더 아래의 생성된 라우터 웹 프로젝트에서 파일을 찾을 수 있습니다. 비즈니스 통합 모듈 프로젝트를 새로 고치기/다시 빌드하십시오.
  15. 비즈니스 통합 Perspective로 전환하고 이주된 모듈을 펼친 후 웹 서비스 포트 논리 카테고리를 펼치십시오.
  16. 이전 단계에서 생성된 포트를 선택하고 어셈블리 편집기로 끌어서 놓고 웹 서비스 바인딩을 갖는 가져오기를 작성할 것을 선택하십시오. 프롬프트되는 경우 EJB의 WSDL 인터페이스를 선택하십시오. 이제 5.1에서 EJB를 이용한 SCA 컴포넌트를 이 가져오기에 연결하여 수동 재연결 이주 단계를 완료하십시오.
WebSphere Studio Application Developer Integration Edition에서 하향식 접근 방식을 사용하여 WSDL 정의에서 EJB 스켈레톤을 생성한 후 다음 단계를 수행하십시오.
  1. 새 웹 프로젝트를 작성하고 EJB 스켈레톤을 생성하려는 WSDL 파일을 이 웹 프로젝트의 소스 폴더에 복사하십시오.
  2. EJB 스켈레톤을 생성하려는 PortType이 들어있는 WSDL 파일을 마우스 오른쪽 단추로 클릭하고 웹 서비스 > Java Bean 스켈레톤 생성을 선택하십시오.
  3. 웹 서비스 유형 스켈레톤 EJB 웹 서비스를 선택하고 마법사를 완료하십시오.
마법사를 완료하면 서비스 인터페이스를 구현하며 WSIF API에 종속되지 않는 EJB가 있어야 합니다.

인터페이스가 5.1 인터페이스와는 약간 다를 수 있으며 5.1 이용자와 새 가져오기 사이에 인터페이스 중개 컴포넌트를 삽입해야 할 수 있음을 주의하십시오. 이를 수행하려면 어셈블리 편집기에서 연결 도구를 클릭하고 SCA 소스 컴포넌트를 이 새로운 웹 서비스 바인딩을 갖는 가져오기에 연결하십시오. 인터페이스가 다르기 때문에 소스 및 대상 노드에 일치하는 인터페이스가 없습니다라고 프롬프트됩니다. 소스 및 대상 노드 사이에 인터페이스 맵핑 작성을 선택하십시오. 어셈블리 편집기에서 작성된 맵핑 컴포넌트를 두 번 클릭하십시오. 맵핑 편집기가 열립니다. 인터페이스 맵핑 작성에 대한 지시사항은 Information Center를 참조하십시오.

이 단계를 완료한 후에 EJB 서비스를 다시 연결해야 합니다. 어떤 참조도 없어야 하므로, Java 컴포넌트의 인터페이스를 다시 연결하면 됩니다.
  • 이 서비스가 동일한 모듈의 비즈니스 프로세스에 의해 호출되는 경우 적합한 비즈니스 프로세스 참조에서 이 EJB 컴포넌트로의 연결을 작성하십시오.
  • 이 서비스가 다른 모듈의 비즈니스 프로세스에 의해 호출되는 경우 SCA 바인딩을 갖는 내보내기를 작성하고, 다른 모듈에서 이 내보내기를 해당 모듈의 어셈블리 편집기로 끌어 놓아서, 대응하는 SCA 바인딩을 갖는 내보내기를 작성하십시오. 적합한 비즈니스 프로세스 참조를 해당 가져오기로 연결하십시오.
  • 이 서비스를 외부에 공개하기 위해 WebSphere Studio Application Developer Integration Edition에 출력된 경우, 서비스 재출력 방법에 대한 지시사항은 "인바운드 BPEL 이외 서비스 이주" 섹션을 참조하십시오.

피드백
(C) Copyright IBM Corporation 2005, 2006. All Rights Reserved.