EJB 1.1에서 EJB 2.x로 코드 마이그레이션

EJB 1.1에서 EJB 2.x로 변환된 프로젝트의 경우 기존 EJB 1.1 코드를 EJB 2.x로 마이그레이션하려면 단계를 수행해야 합니다.

이 태스크 정보

참고: EJB 2.x Bean은 EJB 2.x 프로젝트에서만 지원됩니다(2.x 프로젝트에서는 1.1 Bean도 지원함).
  1. CMP 1.1 Bean의 경우 각 CMP 필드를 추상 getXXXsetXXX 메소드로 바꾸십시오. (Bean 클래스는 추상이어야 합니다.)
  2. CMP의 경우 1차 키에 대해 추상 getXXXsetXXX 메소드를 작성하십시오.
  3. CMP 1.1 파인더 메소드의 경우 각 파인더 메소드에 대해 EJBQL(EJB 조회 언어) 메소드를 작성하십시오.
    참고: 버전 8.5.x 에서는 EJB 조회 언어에 다음과 같은 제한사항이 있습니다.
    • 다른 EJB에 대한 관계로 구성된 키를 갖는 EJB와 관련된 EJB 조회 언어 조회가 올바르지 않은 것으로 표시되며 배치 시에 오류를 발생시킵니다.
    • IBM® EJB 조회 언어 지원은 일부 제한사항을 완화하고 DB2® 기능을 추가하는 등 다양한 방법으로 EJB 2.x 스펙을 확장합니다. 다양한 벤더 데이터베이스 또는 EJB 배치 도구 사이의 이식성이 중요한 경우 EJB 2.x 스펙의 제 11 장에 설명된 지시사항을 엄격하게 준수하여 모든 EJB 조회 언어 조회를 주의해서 작성해야 합니다.
  4. CMP 1.1 파인더의 경우 java.util.Enumeration 대신 java.util.Collection을 리턴합니다.
  5. CMP 1.1 Bean의 경우 ejbCreate() 및 코드 전체에서 this.field = value의 모든 발생을 setField(value)로 변경하십시오.
  6. 비애플리케이션 예외에 대한 예외 처리(롤백 동작) 업데이트:
    • java.rmi.RemoteException 대신 javax.ejb.EJBException을 처리하여 비애플리케이션 예외를 보고하십시오.
    • EJB 2.x 및 1.1의 경우 인스턴스에 의해 예외 처리된 모든 비애플리케이션 예외로 인해 인스턴스가 실행된 트랜잭션이 롤백되고 이 인스턴스는 버려집니다.
  7. 애플리케이션 예외에 대한 예외 처리(롤백 동작) 업데이트:
    • EJB 2.x 및 1.1에서는 애플리케이션 예외로 인해 컨테이너가 트랜잭션을 자동으로 롤백하지 않습니다.
    • EJB 1.1에서는 인스턴스가 EJBContext 오브젝트에서 setRollbackOnly() 메소드를 사용하여 호출된 경우에만 컨테이너가 롤백을 수행합니다.
  8. 애플리케이션 특정 기본값의 CMP 설정이 ejbCreate 내부에 있도록 업데이트하십시오(EJB 1.1 컨테이너는 이전 애플리케이션 특정 기본값을 겹쳐쓰는 ejbCreate를 호출하기 전에 모든 필드를 일반적인 기본값으로 설정하기 때문에 글로벌 변수를 사용하지 않음).
주제 유형을 표시하는 아이콘 태스크 주제
Information Center의 이용 약관 | 피드백

시간소인 아이콘 마지막 업데이트 날짜: 2014-05-22

파일 이름: tejb1xto20.html