Benutzerdefinierte Erweiterungen entwickeln

Dieser Abschnitt enthält Angaben zur Implementierung von benutzerdefinierten Knoten oder Parsern, um die Funktionen von WebSphere Message Broker zu erweitern.

Benutzerdefinierte Knoten können in C oder in Java geschrieben werden. Benutzerdefinierte Parser können nur in C geschrieben werden. Informationen zum Aufbau und zum Erstellen von benutzerdefinierten Knoten und Parsern finden Sie in folgenden Abschnitten:

Die Dateien, die Sie erstellen und dann verteilen sind:

unter Windows-Systemen eine DLL-Datei (dynamic link library) mit dem Dateityp '.lil'

Auf Linux-Systemen: ein gemeinsam genutztes Objekt mit dem Dateityp LIL.

unter UNIX-Systemen ein gemeinsam genutztes Objekt, ebenso mit dem Dateityp '.lil'

unter z/OS ein gemeinsam genutztes Objekt mit dem Dateityp '.lil'

für Java-Knoten, eine Java-Archivdatei (JAR) mit dem Dateityp '.jar'

Eine benutzerdefinierte C-Erweiterung implementiert eine Knoten- oder Parser-Factory, die mehrere Knoten- oder Parser-Typen unterstützen kann. Weitere Informationen finden Sie unter Verhalten von Knoten und Parser-Factory. Java-Benutzer müssen keine Knotenfactory schreiben.

Das System lädt die benutzerdefinierte Erweiterung, wenn der Broker erstmalig startet. Dadurch werden die Registrierungsdefinitionen in der benutzerdefinierten Erweiterung aufgerufen, damit der Broker versteht, welche Knoten oder Parser die benutzerdefinierte Erweiterung unterstützt.

Der Entwickler muss für benutzerdefinierte Knoten ein Workbench-Plug-in sowie die LIL- oder JAR-Laufzeitdatei erstellen. Der benutzerdefinierte Knoten kann dann zur Knotenpalette im Nachrichtenflusseditor hinzugefügt werden. Außerdem kann der neue Knoten in den Nachrichtenflüssen verwendet werden. Nähere Informationen finden Sie unter Darstellung der Benutzerschnittstelle eines benutzerdefinierten Knotens in der Workbench erstellen. Die Ausführung dieses Schritts ist für benutzerdefinierte Parser nicht erforderlich.

Bei der Entwicklung von benutzerdefinierten Erweiterungen müssen einige Faktoren und Einschränkungen berücksichtigt werden:
  • Eine Konstellation, in der ein C benutzerdefinierter Knoten als Schnittstelle zu Java benutzt und in JNI gewrappt wird, wird nicht unterstützt. Der Grund dafür ist, dass der Broker intern eine JVM initialisiert, die nicht über die benutzerdefinierte Erweiterungsschnittstelle verfügbar ist. Die JVM startet erstmalig mit verschiedenen Parametern, die typisch für die Anforderungen des Brokers sind. Da es nur eine JVM in einem Prozess gibt, gibt derjenige, der sie erstmalig startet, diese Parameter an. Wenn ein benutzerdefinierter Knoten Java verwendet und der Broker als erstes gestartet wird, sind diese Parameter möglicherweise nicht für den benutzerdefinierten Knoten geeignet. Wenn der benutzerdefinierte Knoten die JVM erstellt, bevor der Broker gestartet wird, funktioniert der Broker möglicherweise nicht richtig.
  • Benutzerdefinierte Knoten können in WebSphere Event Broker implementiert werden. Bei der Erstellung von benutzerdefinierten Knoten für WebSphere Event Broker-Benutzer müssen Sie sicherstellen, dass Benutzer ESQL-Code nicht auswerten können. Knoten, die beispielsweise die Eingabe für MbSQLStatement als Knoteneigenschaft ermöglichen, würden effektiv einen Rechenknoten emulieren. Die Verwendung von ESQL in WebSphere Event Broker wird nicht unterstützt.
  • Benutzerdefinierte Empfangsknoten unterstützen nur XML-, BLOB- und die MQ-Parser.
  • Vermeiden Sie die Verwendung von betriebssystemspezifischen Funktionen. Wenn Sie dies beachten, können benutzerdefinierte Erweiterungen auf einer Vielzahl von Plattformen ausgeführt werden, ohne dass Änderungen am Quellcode vorgenommen werden müssen.

In der folgenden Tabelle werden die Themen dargestellt, die auf dem Typ der benutzerdefinierten Erweiterung, die Sie erstellen möchten, basieren:

Aktion Empfohlene Abschnitte
Gehen Sie zur Verwendung eines der Java-Musterknoten folgendermaßen vor:
  1. Benutzerdefinierten Java-Knoten kompilieren
  2. Benutzerdefinierte Erweiterung in einer Brokerdomäne installieren
  3. Darstellung der Benutzerschnittstelle eines benutzerdefinierten Knotens in der Workbench erstellen
  4. Benutzerdefinierten Knoten testen
Gehen Sie zur Verwendung eines der C-Musterknoten folgendermaßen vor:
  1. Benutzerdefinierte C-Erweiterung kompilieren
  2. Benutzerdefinierte Erweiterung in einer Brokerdomäne installieren
  3. Darstellung der Benutzerschnittstelle eines benutzerdefinierten Knotens in der Workbench erstellen
  4. Benutzerdefinierten Knoten testen
Gehen Sie zur Verwendung des Musterparsers folgendermaßen vor:
  1. Benutzerdefinierte C-Erweiterung kompilieren
  2. Benutzerdefinierte Erweiterung in einer Brokerdomäne installieren
So erstellen Sie Ihren eigenen Java-Knoten, indem Sie Workbench verwenden:
  1. Empfangsknoten in Java erstellen oder Nachrichtenverarbeitungs- oder Sendeknoten in Java erstellen
  2. Ereignisprotokollierung von einer benutzerdefinierten Erweiterung aus verwenden
  3. Benutzerdefinierten Java-Knoten kompilieren
  4. Benutzerdefinierten Knoten testen
  5. Benutzerdefinierte Erweiterung verteilen
So erstellen Sie Ihren eigenen C-Knoten:
  1. Empfangsknoten in C erstellen oder Nachrichtenverarbeitungs- oder Sendeknoten in C erstellen
  2. Ereignisprotokollierung von einer benutzerdefinierten Erweiterung aus verwenden
  3. Benutzerdefinierte C-Erweiterung kompilieren
  4. Benutzerdefinierte Erweiterung in einer Brokerdomäne installieren
  5. Darstellung der Benutzerschnittstelle eines benutzerdefinierten Knotens in der Workbench erstellen
  6. Benutzerdefinierten Knoten testen
  7. Benutzerdefinierte Erweiterung verteilen
So erstellen Sie Ihren eigenen Parser:
  1. Parser in C erstellen
  2. Ereignisprotokollierung von einer benutzerdefinierten Erweiterung aus verwenden
  3. Benutzerdefinierte C-Erweiterung kompilieren
  4. Benutzerdefinierte Erweiterung in einer Brokerdomäne installieren
Zugehörige Konzepte
Benutzerdefinierte Erweiterungen
Zugehörige Verweise
Benutzerdefinierte Erweiterungen
Bemerkungen | Marken | Downloads | Bibliothek | Unterstützung | Rückmeldung
Copyright IBM Corporation 1999, 2006 Letzte Aktualisierung: 23. Aug. 2006
as09940_