EJB 클라이언트 이주

이 주제에서는 EJB 인터페이스를 사용하여 서비스를 호출하는 클라이언트를 이주하는 방법을 보여 줍니다.

  1. 이주된 모듈에서 새 모듈의 어셈블리 편집기로 SCA 바인딩이 있는 내보내기를 끌어서 놓으십시오. 그러면 SCA 바인딩이 있는 가져오기가 작성됩니다. 클라이언트에서 이 가져오기를 참조로 얻으려면 독립형 참조를 작성해야 합니다.
  2. 팔레트에서 독립형 참조 항목을 선택하십시오. 어셈블리 편집기 캔버스를 한 번 클릭하여 이 새 모듈의 새 독립형 참조를 작성하십시오.
  3. 연결 도구를 선택하고 서비스 참조를 클릭한 후 가져오기를 클릭하십시오.
  4. 일치하는 참조가 소스 노드에서 작성되었음을 경고하면 확인을 클릭하십시오.
  5. 다음과 같은 질문이 표시됩니다: Java 클라이언트가 이 참조와 함께 Java 인터페이스를 사용하는 것이 더 쉽습니다. WSDL 참조를 호환 가능한 Java 참조로 변환하시겠습니까?
    1. 클라이언트가 이 서비스를 찾고 Java™ 인터페이스를 사용하여 호출하기 위해 Java 클래스로서 캐스트하려는 경우 로 응답하십시오. 새 Java 인터페이스에서는 WSDL PortType 이름(인터페이스 패키지가 WSDL WSDL PortType의 이름 공간에서 파생됨)을 사용합니다. WSDL PortType에 정의된 각 오퍼레이션에서 정의한 메소드가 있으며 각 WSDL 메시지 파트는 인터페이스 메소드의 인수로 표시됩니다.
    2. 클라이언트가 이 서비스를 찾고 호출 오퍼레이션을 일반 SCA 서비스로 사용하여 호출하기 위해 일반 com.ibm.websphere.sca.Service 인터페이스를 사용하려는 경우 아니오를 응답하십시오.
  6. 해당하는 경우 어셈블리 편집기에서 독립형 참조 컴포넌트를 선택하여 보다 유용한 이름으로 독립형 참조 이름을 바꾸십시오. 특성 보기, 세부사항 탭으로 이동하여 방금 작성한 참조를 끌어서 놓은 후 해당 참조를 작성하여 이름을 수정하십시오. com.ibm.websphere.sca.ServiceManager 인스턴스의 locateService 메소드를 호출할 때 클라이언트가 이 이름을 사용해야 하기 때문에 이 참조에 대해 선택하는 이름을 기억하십시오.
  7. 저장을 클릭하여 어셈블리 다이어그램을 저장하십시오.
서버에서 실행 중인 이주된 EJB 모듈에 액세스하도록 클라이언트는 해당 로컬 클래스 경로에 이 새 모듈을 배치합니다.
다음은 유형 "CustomerInfo"의 서비스의 경우 클라이언트 코드의 모습을 보여줍니다.
// Create a new ServiceManager
ServiceManager serviceManager = ServiceManager.INSTANCE;
// Locate the CustomerInfo service
CustomerInfo customerInfoService = (CustomerInfo) serviceManager.locateService 
     ("<name-of-standalone-reference-from-previous-step");
	// Invoke the CustomerInfo service
System.out.println(" [getMyValue] getting customer info...");
DataObject customer = customerInfoService.getCustomerInfo(customerID);

클라이언트는 반드시 메시지 생성 방식을 변경해야 합니다. 메시지가 WSIFMessage 클래스를 기반으로 했으나 이제는 commonj.sdo.DataObject 클래스를 기반으로 해야 합니다.

관련 태스크
EJB 및 EJB 프로세스 바인딩 이주
EJB 프로세스 바인딩 클라이언트 이주
BPC(business process choreographer) 일반 EJB API 클라이언트 이주
BPC(Business Process Choreographer) 일반 메시징 API 클라이언트 및 JMS 프로세스 바인딩 클라이언트 이주
IBM Web Service(SOAP/JMS) 클라이언트 이주
IBM Web Service(SOAP/HTTP) 클라이언트 이주

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