작업 스케줄러 EJB(Enterprise JavaBeans) 인터페이스는 일괄처리 작업을 프로그래밍
방식으로 제출하고 조작하는 데 사용됩니다. EJB 인터페이스를
WebSphere® Application Server의 기본 스케줄러와 함께 사용하면
일괄처리 작업의 달력 기반 제출을 수행할 수 있습니다.
시작하기 전에
작업 스케줄러는 Java EE(Java™ Platform,
Enterprise Edition) 애플리케이션의 EJB 인터페이스와 Java EE 및 비Java EE
애플리케이션 모두의 웹 서비스 인터페이스를 통해 해당 기능에 대한
프로그래밍 방식 액세스를 지원합니다. 작업 스케줄러의
EJB 인터페이스는 API 문서에 있는 인터페이스에서
설명합니다. 추가 정보는 이 문서를 참조하십시오.
일괄처리
애플리케이션을 개발하고 설치하십시오.
이 태스크 정보
이 주제에서는 기본 스케줄러를 사용하여 작업 스케줄러에 일괄처리
작업을 제출하는 방법을 설명합니다. 여기에는
작업 스케줄러 EJB를 호출하는 방법을 보여주는 코드 예가 있습니다.
프로시저
- 스케줄러를 작성하고 구성하십시오. 태스크 개발 및
스케줄링에 대한 주제에서 스케줄러를 작성하고 구성하는 방법에 대한
내용을 읽으십시오.
- 일괄처리 작업을 제출하기 위한 스케줄러 태스크를 작성하십시오.
이 스케줄러 태스크는 작업 스케줄러 EJB를 호출하여
일괄처리 작업을 제출합니다.
세션 Bean을 호출하는 태스크 개발에 대한 주제에서 EJB를 호출하는
태스크를 작성하기 위한 지시사항을 읽으십시오. 이 주제에는
스케줄러의 달력 기능 사용에 대한 지시사항도 있습니다.
다음 예는 작업 스케줄러 EJB를 호출하는 방법을 보여줍니다.
// These are the import statements needed by the task
import javax.naming.*;
import com.ibm.websphere.longrun.JobScheduler;
import com.ibm.websphere.longrun.JobSchedulerHome
private JobSchedulerHome zjsHome = null;
private JobScheduler zjs = null;
public void process(TaskStatus task) ()
try{
//Ensure that the xJCL can be placed in a string, for example, by reading an xJCL
//File into a string
String xJCL = <xJCL as a string>;
//Obtain cell-level naming context
InitialContext ctxt = new InitialContext();
Hashtable env = new Hashtable();
env.put(Context.INITIAL_CONTEXT_FACTORY,
"com.ibm.websphere.naming.WsnInitialContextFactory");
env.put(Context.PROVIDER_URL,"corbaloc:rir:/NameServiceCellRoot");
ctxt = new InitialContext(env);
//To look up the LRS EJB from the cell context in the namespace,
//The name context to the application server or cluster to which the LRS
//Application is deployed has to be provided
//Eg: "nodes/myNode/servers/myServer" or "clusters/myCluster".
String longRunningContext = <long_running_context>;
zjsHome = (JobSchedulerHome) ctxt.lookup(longRunningContext +
"/ejb/com/ibm/websphere/longrun/JobSchedulerHome");
zjs = zjsHome.create();
zjs.submitJob( xJCL );
} catch (Exception e) {
System.out.println(e.getMessage());
}
- 일괄처리 작업을 제출하기 위한 프로그램을 실행하십시오.
스케줄러에
태스크를 제출하는 방법에 대한 주제를 읽으십시오.