세션 Bean 메소드를 호출하는 Java 코드 삽입

스니펫 보기를 사용하여 세션 Bean에서 특정 메소드를 호출하는 Java™ 코드를 삽입하십시오.

이 태스크 정보

삽입된 Java 코드는 세션 Bean에서 create 메소드를 호출한 후 사용자가 마법사에서 지정한 메소드를 호출합니다.

세션 Bean 서비스 메소드를 호출하는 스니펫 삽입 예제

스니펫을 삽입하기 전에는 다음과 같습니다.
public class Test {

	public void callSessionMethod() {
		// insert snippet here
		
	}
}
RegistrationFacade 세션 Bean에서 getPrimaryKey 메소드가 선택된 스니펫 삽입 이후에는 다음과 같습니다.
import java.rmi.RemoteException;
import com.ibm.etools.service.locator.ServiceLocatorManager;
import sample.RegistrationFacadeHome;
import sample.RegistrationFacadeRemote;
import javax.ejb.CreateException;
public class Test {

	private final static String STATIC_RegistrationFacadeHome_REF_NAME = "ejb/RegistrationFacade";
	private final static Class STATIC_RegistrationFacadeHome_CLASS = RegistrationFacadeHome.class;
	public void callSessionMethod() {
		// insert snippet here
		RegistrationFacadeRemote aRegistrationFacadeRemote = createRegistrationFacadeRemote();
		try {
			Object anObject = aRegistrationFacadeRemote.getPrimaryKey();
		} catch (RemoteException ex) {
			// TODO Auto-generated catch block
			ex.printStackTrace();
		}
	}
	protected RegistrationFacadeRemote createRegistrationFacadeRemote() {
		RegistrationFacadeHome aRegistrationFacadeHome = (RegistrationFacadeHome) ServiceLocatorManager
				.getRemoteHome(STATIC_RegistrationFacadeHome_REF_NAME,
						STATIC_RegistrationFacadeHome_CLASS);
		try {
			if (aRegistrationFacadeHome != null)
				return aRegistrationFacadeHome.create();
		} catch (CreateException ce) {
			// TODO Auto-generated catch block
			ce.printStackTrace();
		} catch (RemoteException re) {
			// TODO Auto-generated catch block
			re.printStackTrace();
		}
		return null;
	}
}

프로시저

  1. Java EE 퍼스펙티브에서 코드 스니펫을 추가할 Java 파일을 Java 편집기에서 열고 코드를 삽입할 Java 파일의 지점에 커서를 놓으십시오.
  2. 스니펫 보기에서 EJB 드로어를 펼치고 세션 Bean 서비스 메소드 호출을 두 번 클릭하십시오. 세션 Bean 서비스 삽입 마법사가 열립니다.
  3. 작성할 Bean의 EJB 참조를 선택하고 다음을 클릭하십시오. 아직 추가하지 않았으면 새 EJB 참조를 클릭하여 EJB 참조를 추가하십시오. 마법사를 완료하기 전에 참조를 추가해야 합니다.
  4. 다음을 클릭하십시오.
  5. 클라이언트와 엔터프라이즈 Bean이 동일한 애플리케이션 서버 컨테이너에 있지 않은 경우 제공업체 URL이름 서비스 유형을 입력하여 참조된 엔터프라이즈 Bean을 찾아야 합니다. 그렇지 않으면 이 참조에서 찾아보기 수행 시 기본 컨텍스트 특성 사용을 선택할 수 있습니다.
  6. 다음을 클릭하십시오.
  7. 호출할 세션 Bean의 메소드를 선택하십시오.
  8. 완료를 클릭하십시오.

결과

참고: 편집한 Java 클래스가 속한 각 엔터프라이즈 애플리케이션에 serviceLocatorMgr.jar 파일이 유틸리티 JAR 파일로 추가됩니다. 이 serviceLocator.jar 파일에는 삽입된 Java 코드 스니펫에서 사용되는 ServiceLocatorManager 클래스가 있습니다. 이 클래스는 홈 인터페이스 및 InitialContexts의 찾아보기를 최적화하고 전체 애플리케이션을 한 번만 찾아봅니다. 유틸리티 JAR 파일이 추가되므로 모듈 또는 Java 파일이 속한 Java 유틸리티 프로젝트에 대해 serviceLocator.jar 파일의 Java JAR 종속성이 추가됩니다.

ServiceLocatorManager 클래스에는 홈 인터페이스를 찾아볼 때 발생하는 오류 상태에 대한 특정 오류 핸들러를 지정하는 데 사용할 수 있는 setErrorHandler(ServiceLocatorErrorHandler 핸들러)라고 하는 정적 메소드가 있습니다. 기본 핸들러는 처리된 예외에서 간단하게 printStackTrace()를 호출합니다.


피드백