일괄처리 제어기 Bean
배치 디스크립터에서 일괄처리 애플리케이션은 특수한 Stateless 세션 Bean을 선언해야 합니다. 이 Bean은 일괄처리 작업 제어기로 사용됩니다.
각 애플리케이션은 한 개의 제어기 Bean만 포함할 수 있습니다. 단일 작업 클래스에만 제어기 Bean을 포함시킬 수 있으며 일괄처리 애플리케이션은 단일 작업 클래스만 정의할 수 있습니다. 이 단일 작업 클래스는 애플리케이션이 설치되면 작성됩니다. 이 작업 클래스를 임의 또는 큐 시간 목표 유형이 있는 서비스 정책과 연관시킬 수 있습니다. 이 Bean 구현은 일괄처리 애플리케이션이 아니라 제품에서 제공됩니다. Bean은 일괄처리 애플리케이션 배치 디스크립터에 선언해야 합니다. 일괄처리 애플리케이션별로 한 개의 제어기 Bean만 정의할 수 있습니다. 제어기 Bean에서 선언된 자원 참조 및 EJB 참조는 제어기 Bean이 선언된 일괄처리 애플리케이션의 데이터 스트림을 일괄처리하기 위해 사용할 수 있습니다. 예를 들어, 애플리케이션의 일괄처리 데이터 스트림이 WebSphere® Application Server 데이터 소스에 액세스해야 하는 경우, 해당 데이터 소스에 대한 자원 참조는 제어기 Bean에 선언 가능하고 일괄처리 데이터 스트림은 런타임 시에 java:comp/env 네임스페이스에서 데이터 소스를 검색할 수 있습니다.
제한사항
- 홈 인터페이스는 com.ibm.ws.batch.BatchJobControllerHome이어야 합니다.
- 원격 인터페이스는 com.ibm.ws.batch.BatchJobController여야 합니다.
- EJB 클래스는 com.ibm.ws.batch.BatchJobControllerBean이어야 합니다.
- 트랜잭션 유형은 Bean 또는 컨테이너일 수 있습니다.
- 세션 유형은 Stateless여야 합니다.
- 일괄처리 애플리케이션별로 최대 한 개의 일괄처리 제어기 Stateless 세션 Bean이 있을 수 있습니다.
다음 예제 배치 디스크립터는 일괄처리 제어기 Stateless 세션 Bean을
설명합니다.
<session id="BatchController>
<ejb-name>BatchController</ejb-name>
<home>com.ibm.ws.batch.BatchJobControllerHome</home>
<remote>com.ibm.ws.batch.BatchJobController</remote>
<ejb-class>com.ibm.ws.batch.BatchJobControllerBean</ejb-class>
<session-type>Stateless</session-type>
<transaction-type>Bean</transaction-type>
<resource-ref id="ResourceRef_1117024737807">
<description></description>
<res-ref-name>wm/BatchWorkManager</res-ref-name>
<res-type>commonj.work.WorkManager</res-type>
<res-auth>Container</res-auth>
<res-sharing-scope>Shareable</res-sharing-scope>
</resource-ref>
</session>