시작 Bean 사용

시작 Bean의 두 유형, 애플리케이션 시작 Bean 및 모듈 시작 Bean이 있습니다.

이 태스크 정보

제거된 기능 제거된 기능: 시작 싱글톤 세션 Bean(EJB 3.1 스펙)으로 제공된 기능은 WebSphere Application Server 독점 시작 Bean 기능을 더 이상 사용하지 못하게 합니다.depfeat

모듈 시작 Bean은 EJB Jar 파일이 시작할 때 로드되는 세션 Bean입니다. 모듈 시작 Bean을 사용하면 EJB 모듈이 정상적으로 시작하거나 중지될 때마다 Java EE(Java™ Platform Enterprise Edition) 애플리케이션이 비즈니스 로직을 자동으로 실행할 수 있습니다. 애플리케이션 시작 Bean은 애플리케이션 시작 시 로드되는 세션 Bean입니다. 애플리케이션 시작 Bean을 사용하면 애플리케이션이 정상적으로 시작하거나 중지될 때마다 Java EE(Java Platform Enterprise Edition) 애플리케이션이 비즈니스 로직을 자동으로 실행할 수 있습니다.

비동기 Bean 기능으로 사용할 때 시작 Bean이 특히 유용합니다. 예를 들어, 시작 Bean이 JMS(Java Message Service)를 사용하는 알람 오브젝트를 작성하여 잘 알려진 주제에 대한 하트비트 메시지를 정기적으로 게시할 수 있습니다. 이렇게 하면 클라이언트나 다른 서버 애플리케이션에서 애플리케이션이 사용 가능한지 여부를 판별합니다. 기본 JMS 제공자를 사용 중인 경우 애플리케이션을 사용하여 메시징 엔진이 시작하도록 대기 기사를 참조하십시오.

프로시저

  1. 애플리케이션 시작 Bean의 경우, 홈 인터페이스, com.ibm.websphere.startupservice.AppStartUpHome을 사용하여 애플리케이션 시작 Bean으로 Bean을 지정합니다. 모듈 시작 Bean의 경우, 홈 인터페이스, com.ibm.websphere.startupservice.ModStartUpHome을 사용하여 모듈 시작 Bean으로 Bean을 지정합니다.
  2. 애플리케이션 시작 Bean의 경우, 원격 인터페이스, com.ibm.websphere.startupservice.AppStartUp을 사용하여 Bean에 대한 start() 및 stop() 메소드를 정의합니다. 모듈 시작 Bean의 경우, 원격 인터페이스, com.ibm.websphere.startupservice.ModStartUp을 시작하여 Bean에 대한 start() 및 stop() 메소드를 정의합니다.

    모듈이나 애플리케이션이 시작되고 모듈이나 애플리케이션 시작 시 실행될 비즈니스 로직을 포함하면 시작 Bean start() 메소드가 호출됩니다.

    start() 메소드는 부울 값을 리턴합니다. True는 start() 메소드 내 비즈니스 로직이 성공적으로 실행됨을 표시합니다. 반대로, False는 start() 메소드 내 비즈니스 로직이 완전히 실행하는데 실패함을 표시합니다. False의 리턴값은 애플리케이션 시작이 중단되는 애플리케이션 서버를 표시합니다.

    모듈이나 애플리케이션이 중지되고 모듈이나 애플리케이션 중지 시 실행될 비즈니스 로직을 포함하면 시작 Bean stop() 메소드가 호출됩니다. stop() 메소드로 처리된 예외만이 로그됩니다. 다른 조치가 취해지지 않습니다.

    start() 및 stop() 메소드는 TX_MANDATORY transaction 속성을 사용하지 않아야 합니다. start() 또는 stop() 메소드가 호출될 때 글로벌 트랜잭션은 스레드에 없습니다. 기타 TX_* 속성을 사용할 수 없습니다. TX_MANDATORY가 사용되면, 예외가 로깅되고 애플리케이션 시작이 중단됩니다.

    원격 인터페이스에서 start() 및 stop() 메소드는 실행 도구 모드를 사용합니다. 실행 도구 모드는 보안 서비스에서 사용될 신임 정보를 지정하여 여러 자원에 프린시펄이 있는 권한을 판별합니다. 보안이 켜져 있는 경우, 실행 도구 모드는 호출된 모든 메소드에 정의되어야 합니다. 이 설정 없이 Bean의 ID가 정의되지 않습니다.

    전체 애플리케이션 서버 프로그래밍 모델이 이 메소드에 사용 가능하기 때문에 start() 및 stop() 메소드가 실행할 수 있는 제한사항이 없습니다.

  3. 동일한 JAR(Java Archive) 파일에서 다중 시작 Bean의 시작 순서를 지정하려면 선택적 환경 특성 정수, wasStartupPriority를 사용하십시오. 환경 특성이 발견되고, 틀린 유형이면, 애플리케이션 시작이 중단됩니다. 특성 값이 지정되지 않으면 기본 우선순위 0이 사용됩니다. 우선순위 특성을 지정하는 것이 좋습니다. 우선순위를 지정한 Bean이 이 우선순위를 사용하여 정렬됩니다. 숫자로 낮은 우선순위의 Bean이 먼저 실행됩니다. 우선순위가 동일한 Bean이 정의되지 않은 순서로 실행됩니다. 모든 우선순위는 양의 정수여야 합니다. Bean은 해당 시작 우선순위에 대해 반대 순서로 중지됩니다. 모듈 시작 Bean 및 애플리케이션 시작 Bean에 대한 우선순위 값은 상호 독점적입니다. 모든 모듈은 시작됨으로 선언된 애플리케이션보다 먼저 시작되므로 애플리케이션 내 모듈 시작 Bean에 대한 start() 메소드는 애플리케이션 시작 Bean에 대한 start() 메소드보다 먼저 호출됩니다. 마찬가지로, 특정 JAR(Java Archive) 파일에 대한 모든 애플리케이션 시작 Bean stop() 메소드는 해당 JAR에 대한 모듈 시작 Bean stop() 메소드보다 먼저 호출됩니다.
    참고: wasStartupPriority 환경 특성 정수는 명령 또는 관리 콘솔을 통해 설정될 수 없습니다. 이 환경 특성 정수는 관리자가 아닌 애플리케이션 개발자가 설정하는 EJB 환경 항목입니다. 다음 예에서 보는 것처럼 ejb-jar.xml 파일에서 정수 값을 설정합니다.
    <env-entry>  <env-entry-name>wasStartupPriority</env-entry-name>
      <env-entry-type>java.lang.Integer</env-entry-type>
      <env-entry-value>3</env-entry-value>
    </env-entry>
    다른 EJB 환경 항목에서와 같이 각 EJB에 대해 별도의 wasStartupPriority 값을 설정합니다.
  4. 모듈 시작 Bean의 경우, EJB 모듈이 시작되는 순서는 각 모듈과 연관된 시작 가중치 값을 통해 조정될 수 있습니다.
  5. WebSphere® Security를 통해 시작 Bean 메소드를 호출하는 사람을 제어하려면 다음을 수행합니다.
    1. EJB 모듈에 대해서와 같이 Start() 및 Stop() 메소드에 대한 메소드 권한을 정의합니다. (EJB 모듈에 대한 메소드 권한 정의를 참조하십시오.)
    2. 시작 Bean 메소드에 대해 정의된 보안 역할에 맵핑된 사용자가 사용자 레지스트리 내 서버 사용자 ID로 정의된 동일한 사용자인지 확인하십시오.

다음에 수행할 작업

시작 Bean 서비스 설정을 보십시오.

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



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