La interfaz de EJB (Enterprise JavaBeans) del planificador de trabajos se utiliza para someter y manipular mediante programación un trabajo de Compute Grid. Puede utilizar la interfaz de
EJB conjuntamente con el planificador básico en WebSphere
Application Server para someter un trabajo de Compute Grid en base a un calendario. Este tema describe cómo someter un trabajo de
Compute Grid al planificador de trabajos utilizando el planificador básico en WebSphere Application Server.
Procedimiento
-
Cree y configure un planificador. Consulte
Desarrollo
y planificación de tareas para obtener información sobre cómo crear
y configurar un planificador.
-
Cree una tarea de planificador para someter trabajo de larga duración. Esta tarea de
planificador invoca el EJB del planificador de trabajos
para someter un trabajo de Compute Grid. Consulte el tema Desarrollo de una tarea que llama a un bean de sesión en el Information Center de WebSphere Application Server Versión 6.0 para obtener instrucciones sobre cómo crear una tarea que invoque un EJB. Es tema
también incluye instrucciones para la característica de calendario del
planificador de WebSphere. El siguiente ejemplo de código de tarea demuestra cómo invocar el EJB de planificador de trabajos:
// Estas son las sentencias de importación que necesita la tarea
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{
//Asegurarse de que el xJCL puede colocarse en una serie, por ejemplo,
//leyendo un archivo xJCL en una serie
String xJCL = <xJCL as a string>;
//Obtener el contexto de denominación en el nivel de célula
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);
//Buscar el EJB de LRS del contexto de célula en el espacio de nombres,
//El contexto de nombre del servidor de aplicaciones o clúster en el que
//se despliega la aplicación LRS debe proporcionarse
//Por ejemplo: "nodes/myNode/servers/myServer" o "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());
}
-
Planifique la tarea del planificador para someter trabajo de larga duración. Lea sobre Someter una tarea a un planificador en el Information Center de WebSphere
Application Server Versión 6.0.