Tasks entwickeln und planen

Verwenden Sie zum Entwickeln und Planen von Tasks einen konfigurierten Scheduler.

Vorgehensweise

  1. Einen konfigurierten Scheduler suchen. Weitere Informationen finden Sie im Artikel "Auf Pläne Zugreifen". Jeder konfigurierte Scheduler ist in zwei unterschiedlichen Programmiermodellen verfügbar:
    • Eine Java™-EE-Serveranwendung (Java Platform, Enterprise Edition), z. B. ein Servlet oder eine EJB-Komponente (Enterprise JavaBeans), kann die Scheduler-API verwenden. Der Zugriff auf Scheduler erfolgt über Lookup-Operationen mit einem JNDI-Namen (Java Naming and Directory Interface) oder einer Ressourcenreferenz.
    • JMX-Anwendungen (Java Management Extensions), wie z. B. wsadmin-Scripts, können die Scheduler-API mit WASScheduler-MBeans verwenden.
  2. Task entwickeln.

    Die Scheduler-API unterstützt verschiedene Implementierungen der Schnittstelle "TaskInfo", die zur Planung bestimmter Aufgabenarten verwendet werden können. Weitere Einzelheiten finden Sie in den Artikeln "Task entwickeln, die eine Session-Bean aufruft" und "Task entwickeln, die eine JMS-Nachricht (Java Message Service) sendet". Das Taskobjekt, das im Artikel "Task entwickeln, die eine JMS-Nachricht (Java Message Service) sendet" referenziert wird, kann eine JMS-Nachricht an eine Warteschlange oder an ein Topic senden.

    Achtung: Die Erstellung und Bearbeitung geplanter Tasks über die Schnittstelle "Scheduler" wird nur innerhalb des EJB-Containers oder Web-Containers (Enterprise-Beans oder Servlets) unterstützt. Das Suchen und Verwenden eines konfigurierten Scheduler über den Container eines Java-EE-Anwendungsclients wird nicht unterstützt.
  3. Scheduler-Benachrichtigungen empfangen. Sie können eine Benachrichtigungssenke (Notification Sink) für eine Task definieren, um Benachrichtigungsereignisse zu empfangen, die vom Scheduler generiert werden, wenn dieser eine Operation für die Task ausführt.
  4. Angepasste Kalender verwenden. Sie können einer Task eine Session-Bean "UserCalendar" zuordnen, die Schedulern die Verwendung angepasster und vordefinierter Datumsalgorithmen für die Bestimmung des Ausführungszeitpunkts einer Task ermöglicht. Weitere Einzelheiten finden Sie im Artikel zur Schnittstelle "UserCalendar".
  5. Tasks an einen Scheduler übergeben. Nachdem ein TaskInfo-Objekt erstellt wurde, kann es zwecks Taskerstellung mittels der Methode Scheduler.create() an den Scheduler übergeben werden.
  6. Tasks mit einem Scheduler verwalten.
  7. Tasks mit einem Scheduler sichern.

Beispiel

Sie können die Kalender SIMPLE und CRON in jeder Java-EE-Anwendung verwenden. Der Prozess ist im folgenden Beispiel veranschaulicht.

Standard-Scheduler-Kalender verwenden. Die folgenden Codebeispiele veranschaulichen die richtige und die falsche Verwendung von Verbindungen.

Wenn Sie die Standard-Scheduler-Kalender verwenden möchten, müssen Sie das Enterprise JavaBeans-Home-Standardobjekt UserCalendarHome suchen, die Bean UserCalendar erstellen und die Methode applyDelta() aufrufen. Einzelheiten zur Methode applyDelta und zur Syntax für die Kalender SIMPLE und CRON finden Sie im Artikel zur Schnittstelle "UserCalendar".

import java.util.Date;
import javax.naming.InitialContext;
import javax.rmi.PortableRemoteObject;
import com.ibm.websphere.scheduler.UserCalendar;
import com.ibm.websphere.scheduler.UserCalendarHome;

// Ausgangskontext erstellen
InitialContext ctx = new InitialContext();

// Standard-Home-Objekt UserCalendar suchen und eingrenzen.
UserCalendarHome defaultCalHome=(UserCalendarHome)
		PortableRemoteObject.narrow(ctx.lookup(
      UserCalendarHome.DEFAULT_CALENDAR_JNDI_NAME), 
	   UserCalendarHome.class);

// Standard-UserCalendar-Instanz erstellen.
UserCalendar defaultCal = defaultCalHome.create();

// Mit CRON ein Datum basierend auf dem aktuellen Datum
// und der aktuellen Uhrzeit berechnen. Das nächste Datum
// zurückgegeben, das Samstag 2 Uhr nachmittags entspricht.
Date newDate = 
    defaultCal.applyDelta(new Date(), 
        "CRON", "0 0 2 ? * SAT");

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=tsch_developtasks
Dateiname:tsch_developtasks.html