Sie können einen benutzerdefinierten Knoten implementieren, um die
Funktionalität von WebSphere Message
Broker zu erweitern.
Beachten Sie die folgenden Einschränkungen und Faktoren
beim Entwickeln benutzerdefinierter Knoten:
- Eine Konstellation, in der ein benutzerdefinierter
C-Knoten als Schnittstelle zu
Java™
benutzt und ein JNI-Wrapper bereitgestellt wird, wird nicht unterstützt. Diese Einschränkung besteht, da der Broker zunächst eine JVM initialisiert hat, die nicht über die Schnittstelle der benutzerdefinierten Erweiterung verfügbar ist. Die JVM wird mit verschiedenen Parametern initialisierst, die den Anforderungen des Brokers entsprechen. Da nur eine JVM in einem Prozess vorhanden ist, gibt derjenige, der sie erstmalig startet,
diese Parameter an. Wenn ein benutzerdefinierter Knoten
Java verwendet und der Broker
zuerst initialisiert wird, sind diese Parameter möglicherweise für den
benutzerdefinierten Knoten nicht geeignet. Wenn der benutzerdefinierte Knoten die JVM erstellt, bevor der Broker gestartet wird, funktioniert der Broker möglicherweise nicht richtig.
- Benutzerdefinierte Empfangsknoten unterstützen nur XML-, BLOB- und die
WebSphere
MQ-Parser.
- Vermeiden Sie die Verwendung von Funktionen, die nur für ein Betriebssystem
spezifisch sind.
Bei dieser Codierung können benutzerdefinierte Erweiterungen auf verschiedenen Betriebssystemen verwendet werden, ohne dass Änderungen am Quellcode erforderlich sind.
- Fügen Sie einen benutzerdefinierten Knoten immer in ein Schema ein, das kein Standardschema ist, da benutzerdefinierte Knoten in einem Brokerschema von anderen Nachrichtenflüssen über den qualifizierten Schemanamen erkannt werden. Wenn sich beispielsweise ein benutzerdefinierter Knoten mit dem Namen ErrorHandler im Brokerschema com.ibm.mb.toolkit befindet, wird auf ihn mit com.ibm.mb.toolkit.ErrorHandler verwiesen.
Verfügt ein zweiter Anbieter ebenfalls über ein Fehlerbehandlungsprogramm mit dem Namen ErrorHandler, das sich im Brokerschema com.xxx.Produkt verwendet, wird auf dieses Programm mit com.xxx.Produkt.ErrorHandler verwiesen.
Auf einen benutzerdefinierten Knoten in einem Standardschema dagegen wird nur über den Namen verwiesen.
Wenn daher zwei Fehlerbehandlungsprogramme, die von verschiedenen Providern entwickelt wurden, aber beide den Namen ErrorHandler haben, in ein Standardschema eingefügt werden und sich beide benutzerdefinierte Knoten im Plug-in-Bereich für einen dritten Benutzer befinden, ist der Verweis auf ErrorHandler nicht eindeutig.
- Wenn Sie einen benutzerdefinierten Knoten auf Basis eines untergeordneten Nachrichtenflusses erstellen möchten, lesen Sie die Informationen zu Einschränkungen im Abschnitt Untergeordneten Nachrichtenfluss als benutzerdefinierten Knoten verwenden.
Führen
Sie zum Implementieren eines benutzerdefinierten Knotens die folgenden Tasks in der
angegebenen Reihenfolge aus: