환경 변수 또는 마커 인터페이스를 사용하여 특정 EJB(Enterprise
JavaBeans) 유형이 각 findBy 호출에 앞서 상태를 지속적
스토리지와 동기화할 수 없음을 나타낼 수 있습니다.
이 태스크 정보
특정 EJB 유형의 상태를 각 findBy 호출에 앞서 지속적
스토리지와 동기화할 수 없음을 나타내기 위한 옵션은
다음 두 가지가 있습니다.
- Bean의 배치 디스크립터에서 EJB 환경 변수를 설정하십시오.
- Bean 구현 클래스에서 마커 인터페이스를 구현하게 하십시오.
이 두 번째 기술은 특히 전체가 단일 루트 클래스를 확장하는 다수의
Bean 구현을 갖는 경우에 유용합니다. 이런 경우 루트 클래스가
마커 인터페이스를 구현하게 하여 이 클래스를 확장하는 모든
Bean이 동작도 상속하게 할 수 있습니다.
프로시저
- EJB 환경 변수 기술을 사용하려면 모든 표준 Java™
EE(Java Platform, Enterprise Edition) 개발 도구를 사용하여 EJB 배치 디스크립터를 편집하십시오. 도구 옵션에 대한 정보는
어셈블리 도구 주제를 참조하십시오.
- 도구를 시작하십시오.
- 작업하려는 Bean의 EJB 배치 디스크립터를
선택하십시오.
- com/ibm/websphere/ejbcontainer/disableFlushBeforeFind 이름의 EJB 환경 변수를 작성하십시오.
- 이 변수의 유형을 java.lang.Boolean으로 설정하십시오.
- 미리 찾기 동기화를 방지하려면 값을 True로 설정하고,
기본 동작을 사용 가능하게 하려면 False로 설정하십시오.
- 변경사항을 저장하십시오.
- 마커 인터페이스를 사용하려면 Bean 구현 클래스를 코드화하여
com.ibm.websphere.ejbcontainer.disableFlushBeforeFind 인터페이스를 구현하십시오. Bean 구현 클래스는 인터페이스를 직접 구현할 필요가 없습니다.
모든 상위 클래스가 인터페이스를 구현할 수 있습니다. Information Center의 참조 >
개발자 > API 문서 섹션에서 com.ibm.websphere.ejbcontainer
패키지를 참조하십시오.
트랜잭션 중 수행되는
조회의 데이터 무결성 보장
특정
Bean 유형에 대한 자동 미리 찾기 동기화를 사용 불가능하게
선택하는 경우, 애플리케이션에서는 트랜잭션 중에 수행된 조회가
더 이상 유효하지 않은 데이터에 대해 수행되지 않도록 다른 방법을
사용해야 합니다. com.ibm.websphere.ejbcontainer.EJBContextExtension
클래스(javax.ejb.EJBContext 확장)의 flushCache 메소드를
사용하여 애플리케이션에서 정의한 시간에 지속적 스토리지로의
수동 동기화를 수행할 수 있습니다.
EJBContextExtension과 관련 클래스 SessionContextExtension,
EntityContextExtension 및 MessageDrivenContextExtension에 대한 자세한 정보는
Information Center의 참조 > 개발자 > API 문서 섹션에서
com.ibm.websphere.ejbcontainer 패키지를 참조하십시오.