A interface EJB (Enterprise JavaBean) do planejador de longa execução é utilizada para submeter e manipular programaticamente as tarefas de longa execução. A interface EJB pode ser utilizada em conjunto com o planejador WebSphere para desempenhar a submissão baseada em calendário de tarefas de longa execução. Esta seção descreve como submeter as tarefas de longa execução para o planejador de longa execução utilizando o planejador básico no WebSphere Application Server.
// Elas são instruções de importação necessárias pela Tarefa 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{ //certifique-se de que o xJCL possa ser colocado em uma Cadeia, por exemplo: lendo um arquivo xJCL //em uma Cadeia. String xJCL = <xJCL como uma cadeia>; //obtenha um nível de célula denominado 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); //para consultar o EJB LRS a partir do contexto da célula no espaço de nomes, //o contexto do nome para o servidor de aplicativos ou o cluster no qual o //aplicativo LRS é implementado deve ser fornecido. //Ex: “nodes/myNode/servers/myServer” ou “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()); }