Someter trabajos por lotes mediante la interfaz de EJB del planificador de trabajos

La interfaz Enterprise JavaBeans (EJB) del planificador de trabajos se utiliza para someter de forma programada y manipular un trabajo por lotes. Puede utilizar la interfaz EJB con el planificador base en WebSphere Application Server para realizar un envío basado en calendario de un trabajo por lotes.

Antes de empezar

El planificador de trabajos da soporte al acceso programado a sus funciones mediante una interfaz EJB para aplicaciones Java™ Platform, Enterprise Edition (Java EE) y una interfaz de servicios web para aplicaciones Java EE y no de Java EE. La interfaz EJB para el planificador de trabajos se describe mediante interfaces que se encuentran en la documentación de la API. Para obtener más información, consulte esta documentación.

Desarrolle e instale sus aplicaciones por lotes.

Acerca de esta tarea

En este tema se describe cómo enviar un trabajo por lotes al planificador de trabajos mediante el planificador base. Incluye un ejemplo de código que muestra cómo invocar el EJB de la planificador de trabajos.

Procedimiento

  1. Cree y configure un planificador. Lea sobre cómo crear y configurar un planificador en el tema sobre el desarrollo y planificación de tareas.
  2. Cree una tarea de planificador para someter el trabajo por lotes.

    Esta tarea de planificador invoca el EJB de la planificador de trabajos para someter un trabajo por lotes. Lea las instrucciones para crear una tarea que invoque un EJB en el tema sobre desarrollo de una tarea que llame a un bean de sesión. En este tema también se incluyen las instrucciones para utilizar la característica de calendario del planificador. En el ejemplo siguiente se muestra cómo invocar el EJB de la 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 contexto de denominación a 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);
    
         // Para buscar el EJB de LRS desde el contexto de célula en el espacio de nombres,
         // se debe proporcioanr el contexto de denominación para el servidor de
         // aplicaciones o clúster en el que se despliega la aplicación LRS
         // P.e.: "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());
    }
  3. Ejecute el programa para someter el trabajo por lotes

    Lea el tema sobre el sometimiento de una tarea a un planificador.


Icon that indicates the type of topic Task topic



Timestamp icon Last updated: last_date
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=tgrid_xdbgusweb
File name: tgrid_xdbgusweb.html