Stapeljobs über die EJB-Schnittstelle des Job-Schedulers übergeben

Die EJB-Schnittstelle wird verwendet, um einen Stapeljob programmgesteuert zu übergeben und zu bearbeiten. Sie können die EJB-Schnittstelle mit dem Basis-Scheduler in WebSphere Application Server verwenden, um eine kalenderbasierte Übergabe eines Stapeljobs durchzuführen.

Vorbereitende Schritte

Der Job-Scheduler unterstützt den programmgesteuerten Zugriff auf seine Funktionen über eine EJB-Schnittstelle für Java-EE-Anwendungen (Java™ Platform, Enterprise Edition) und eine Web-Service-Schnittstelle für Java-EE-Anwendungen und für Anwendungen, die keine Java-EE-Anwendungen sind. Die EJB-Schnittstelle für den Job-Scheduler wird durch die Schnittstellen beschrieben, die in der API-Dokumentation enthalten sind. Nähere Informationen finden Sie in dieser Dokumentation.

Entwickeln und installieren Sie Ihre Stapelanwendung.

Informationen zu diesem Vorgang

In diesem Artikel wird beschrieben, wie ein Stapeljob unter Verwendung des Basis-Schedulers an den Job-Scheduler übergeben wird. Der Artikel enthält ein Codebeispiel, das veranschaulicht, wie die EJB-Schnittstelle des Job-Schedulers aufgerufen wird.

Vorgehensweise

  1. Erstellen und konfigurieren Sie einen Scheduler. Informationen zum Erstellen und Konfigurieren eines Schedulers finden Sie im Artikel zum Entwickeln und Planen von Tasks.
  2. Erstellen Sie eine Scheduler-Task für die Übergabe von Stapelarbeit.

    Diese Scheduler-Task ruft die EJB des Job-Schedulers auf, um einen Stapeljob zu übergeben. Lesen Sie die Anweisungen zum Erstellen einer Task, die eine EJB aufruft, im Artikel zum Entwickeln einer Task, die eine Session-Bean aufruft. Dieser Artikel enthält außerdem Anweisungen zur Verwendung der Kalenderfunktion des Schedulers. Das folgende Beispiel veranschaulicht, wie die EJB-Schnittstelle des Job-Schedulers aufgerufen wird:

    // Die für die Task erforderlichen Importanweisungen
    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{
    
         // Sicherstellen, dass die xJCL in eine Zeichenfolge übernommen werden kann,
         // z. B. durch Einlesen einer xJCL-Datei in eine Zeichenfolge
         String xJCL = <xJCL as a string>;
    
         // Namenskontext auf Zellenebene abrufen
         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);
    
         // Zum Suchen der EJB des Scheduler für lange Laufzeit aus dem Zellenkontext
         // im Namespace muss der Namenskontext für den Anwendungsserver oder Cluster,
         // in dem die Scheduleranwendung implementiert ist, angegeben werden.
         // Beispiele: "nodes/myNode/servers/myServer", "clusters/myCluster".
    
         String longRunningContext = <Kontext_für_lange_Laufzeit>;
    
    
         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. Führen Sie das Programm aus, um Stapelarbeit zu übergeben.

    Lesen Sie den Artikel zum Übergeben einer Task an den Scheduler.


Symbol, das den Typ des Artikels anzeigt. Taskartikel



Symbol für Zeitmarke Letzte Aktualisierung: 25.05.2016
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=tgrid_xdbgusweb
Dateiname:tgrid_xdbgusweb.html