EJB 모듈 ActivitySession 배치 속성 설정

이 태스크를 사용하여 Bean이 ActivitySession 컨텍스트에 참여하여 ActivitySession 기반 조작을 지원할 수 있게 하는 엔터프라이즈 Bean에 대한 ActivitySession 배치 속성을 설정할 수 있습니다.

시작하기 전에

이 태스크 설명에서는 WebSphere® Application Server에 배치될 수 있는 애플리케이션 컴포넌트에 대한 EAR 파일이 있다고 가정합니다. 자세한 내용은 애플리케이션 어셈블 주제를 참조하십시오.

이 태스크 정보

어셈블리 도구를 사용하여 애플리케이션의 배치 속성을 구성합니다. 아 주제에서는 Rational® Application Developer를 사용하여 ActivitySession 배치 속성을 구성하는 방법에 대해 설명합니다. 이러한 속성은 다른 배치 속성(예: Bean이 데이터베이스에서 상태를 로드할 때 지정하는 "로드")에 추가됩니다. 어셈블리 도구의 필드 및 관련 태스크 도움말에 대한 자세한 정보는 Rational Application Developer 정보를 참조하십시오.

엔터프라이즈 Bean에 대한 ActivitySession 배치 속성을 설정하려면 다음 단계를 완료하십시오.

프로시저

  1. 어셈블리 도구를 시작하십시오. 자세한 정보는 Rational 애플리케이션 개발자 정보를 참조하십시오.
  2. 애플리케이션 EAR 파일을 작성하거나 편집합니다.
    참고: 대상 서버를 WebSphere Application Server 버전 7.0으로 설정하십시오.

    예를 들어, 기존 애플리케이션의 속성을 변경하려면 가져오기 마법사를 사용하여 EAR 파일을 어셈블리 도구로 가져옵니다. 가져오기 마법사를 시작하려면 다음을 수행하십시오.

    1. 파일 > 가져오기 > EAR 파일을 클릭하십시오.
    2. 다음을 클릭한 다음 EAR 파일을 선택하십시오.
    3. 대상 서버 필드에서 WebSphere Application Server v7.0을 선택하십시오.
    4. 완료를 클릭하십시오.
  3. Java™ EE Perspective의 프로젝트 탐색기 보기에서 엔터프라이즈 Bean 인스턴스의 EJB 모듈을 오른쪽 마우스 단추로 클릭한 다음 연결 프로그램 > 배치 디스크립터 편집기를 클릭하십시오. 특성 분할창에 엔터프라이즈 Bean 인스턴스에 대한 특성 대화 상자 노트북이 표시됩니다.
  4. 특성 분할창에서 Bean 탭을 선택하십시오.
  5. 변경하려는 Bean을 선택하십시오.
  6. WebSphere 확장 섹션의 Bean 캐시에서 활성화 위치 속성을 ActivitySession으로 설정하십시오.
    이 활성화 정책을 포함하는 엔터프라이즈 Bean은 다음과 같이 활성화 및 비활성화됩니다.
    • 활성화 시 ActivitySession 컨텍스트가 있을 경우 ActivitySession 경계에서
    • 트랜잭션 경계의 경우 활성화할 때 트랜잭션 컨텍스트는 있지만 ActivitySession 컨텍스트는 없는 경우.
    • 그 외에 호출 경계에서.
  7. 로컬 트랜잭션 그룹 상자에서 경계 속성을 ActivitySession으로 설정하십시오. 이 설정이 사용되면, 로컬 트랜잭션은 시작된 ActivitySession의 범위 내, 또는 ActivitySession 컨텍스트가 없는 경우 시작된 동일한 Bean 메소드 범위 내에서 분석되어야 합니다.

    ActivitySession 설정은 EJB 홈 메소드에는 적용되지 않습니다(예: 작성 및 파인더 메소드). EJB 홈 메소드는 ActivitySession에 참여할 수 없습니다. 이 상황이 교착 상태를 일으킬 수 있기 때문입니다.

  8. 엔티티 Bean 또는 세션 Bean의 경우 각 EJB 메소드에 대해 ActivitySession 특성을 설정하십시오.
    1. 특성 분할창에서 ActivitySession 탭을 선택하십시오.
    2. ActivitySession 정책 구성 필드에서 추가 또는 편집을 클릭하여 Enterprise Bean의 메소드에 대한 ActivitySession 종류 속성을 설정하십시오. 이는 메소드 호출을 엔터프라이즈 Bean의 비즈니스 메소드로 내보낼 때 컨테이너가 ActivitySession 경계를 관리하는 방법을 지정합니다.
      수행 안함
      컨테이너가 ActivitySession 컨텍스트 없이 Bean 메소드를 호출합니다.
      • 클라이언트가 ActivitySession 컨텍스트 내에서 Bean 메소드를 호출하는 경우, 컨테이너에서 InvalidActivityException 예외인 javax.rmi.RemoteException이 발생할 수 있습니다.
      • 클라이언트가 ActivitySession 컨텍스트 밖에서 Bean 메소드를 호출하는 경우, 컨테이너가 마치 지원 안됨 값이 설정된 것과 동일한 방식으로 작동합니다. 클라이언트가 ActivitySession 컨텍스트 없이 메소드를 호출해야 합니다.
      필수
      컨테이너는 언제나 클라이언트와 연관된 ActivitySession 컨텍스트 내에서 Bean 메소드를 호출합니다. 클라이언트가 ActivitySession 컨텍스트 없이 Bean 메소드를 호출하려 시도하는 경우, 컨테이너는 클라이언트에서 ActivityRequiredException 예외를 발생시킵니다. ActivitySession 컨텍스트는 엔터프라이즈 Bean 메소드가 액세스하는 자원 또는 EJB 오브젝트에 전달됩니다.

      ActivityRequiredException 예외는 javax.rmi.RemoteException입니다.

      신규 필요
      컨테이너는 클라이언트가 ActivitySession 컨텍스트 내 또는 밖에서 메소드를 호출하는 것과 상관없이 언제나 새 ActivitySession 컨텍스트 내에서 Bean 메소드를 호출합니다. 새 ActivitySession 컨텍스트는 엔터프라이즈 Bean 오브젝트 또는 이 Bean 메소드가 사용하는 자원에 전달됩니다.

      수신된 모든 ActivitySession 컨텍스트는 메소드 지속 기간 동안 일시중단되며 메소드가 종료되면 재개됩니다. 컨테이너는 메소드가 디스패치되기 전에 새 ActivitySession을 시작하고 메소드가 종료된 후에 완료됩니다.

      Required
      컨테이너는 ActivitySession 컨텍스트 내에서 Bean 메소드를 호출합니다. 클라이언트가 ActivitySession 컨텍스트 내에서 Bean 메소드를 호출할 경우, 컨테이너는 클라이언트 ActivitySession 컨텍스트 내에서 Bean 메소드를 호출합니다. 클라이언트가 ActivitySession 컨텍스트 밖에서 Bean 메소드를 호출할 경우, 컨테이너는 새 ActivitySession 컨텍스트를 작성하고 해당 컨텍스트 내에서 Bean 메소드를 호출합니다. ActivitySession 컨텍스트는 엔터프라이즈 Bean 오브젝트 또는 이 Bean 메소드가 사용하는 자원에 전달됩니다.
      지원 안됨
      컨테이너가 ActivitySession 컨텍스트 없이 Bean 메소드를 호출합니다. 클라이언트가 ActivitySession 컨텍스트 내에서 Bean 메소드를 호출할 경우, 컨테이너는 Enterprise Bean 인스턴스에 대해 메소드를 호출하기 전에 ActivitySession과 현재 스레드 간 연관을 일시중단시킵니다. 그런 다음, 컨테이너는 메소드 호출이 리턴될 때 일시중단된 연관을 재개합니다. 일시중단된 ActivitySession 컨텍스트는 엔터프라이즈 Bean 오브젝트 또는 이 Bean 메소드가 사용하는 자원으로 전달되지 않습니다.
      지원
      클라이언트가 ActivitySession 내에서 Bean 메소드를 호출하면 컨테이너는 ActivitySession 컨텍스트 내에서 Bean 메소드를 호출합니다. 클라이언트가 ActivitySession 컨텍스트 없이 Bean 메소드를 호출하면 컨테이너는 ActivitySession 컨텍스트 없이 Bean 메소드를 호출합니다. ActivitySession 컨텍스트는 엔터프라이즈 Bean 오브젝트 또는 이 Bean 메소드가 사용하는 자원에 전달됩니다.
    3. 다음을 클릭하십시오.
    4. ActivitySession 종류 정책을 적용할 메소드를 선택하십시오.
    5. 완료를 클릭하십시오.

    메소드 호출을 위임할 때 컨테이너가 ActivitySession 경계를 관리하는 방식은 여기서의 ActivitySession 종류 설정 및 트랜잭션 배치 속성 구성에 대한 주제에 설명된 컨테이너 트랜잭션 유형에 따라 다릅니다. 이 두 가지 특성 관계에 대한 자세한 사항은 ActivitySession 및 트랜잭션 컨테이너 정책에 대한 주제를 참조하십시오.

  9. 배치 디스크립터에 사용자의 변경사항을 저장하십시오.
    1. 배치 디스크립터 편집기를 닫으십시오.
    2. 프롬프트가 표시되면 를 클릭하여 변경사항을 배치 디스크립터에 저장합니다.
  10. 아카이브 파일을 확인하십시오. Rational Application Developer를 사용한 파일 확인에 대한 자세한 정보는 Rational 애플리케이션 개발자 정보를 참조하십시오.
  11. 프로젝트의 팝업 메뉴에서 배치를 클릭하여 EJB 배치 코드를 생성합니다.
  12. 옵션: WebSphere Application Server 설치에서 완료된 모듈을 테스트하십시오. 모듈을 마우스 오른쪽 단추로 클릭하고, 서버에서 실행을 클릭하고, 표시된 마법사의 지침을 따르십시오.
    중요사항: 서버에서 실행은 장치 테스트용으로만 사용하십시오. 어셈블리 도구는 WebSphere Application Server 설치 및 애플리케이션이 원격으로 게시된 시기를 제어하고, 어셈블리 도구는 해당 서버에 대한 서버 구성 파일을 겹쳐씁니다. 프로덕션 서버에서 서버에서 실행 옵션을 사용하지 마십시오.

다음에 수행할 작업

애플리케이션을 어셈블한 후 시스템 관리 도구를 사용하여 애플리케이션을 실행할 애플리케이션 서버에 EAR 파일을 배치하십시오. 예를 들어, 관리 콘솔을 사용하려면 엔터프라이즈 애플리케이션 배치 및 관리 주제를 참조하십시오.

주제 유형을 표시하는 아이콘 태스크 주제



시간소인 아이콘 마지막 업데이트 날짜: last_date
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=tas_depejb2
파일 이름:tas_depejb2.html