JavaCompute-Knoten

Verwenden Sie den JavaCompute-Knoten, um mit Nachrichten zu arbeiten, welche die Java-Sprache verwenden.

Dieses Thema enthält folgende Abschnitte:

Zweck

Mit diesem Knoten können folgende Tasks ausgeführt werden:

  • Mit Java können Sie eine eingehende Nachricht prüfen und abhängig von ihrem Inhalt unverändert an eines der beiden Ausgabeterminals des Knotens weitergeben; der Knoten verhält sich ähnlich wie ein Filter-Knoten, verwendet jedoch anstelle von ESQL-Code Java, um zu ermitteln, welches Ausgabeterminal verwendet wird.
  • Mit Java können Sie einen Teil einer eingehenden Nachricht ändern und die geänderte Nachricht an eines der Ausgabeterminals weitergeben.
  • Mit Java können Sie eine neue Ausgabenachricht erstellen und aufbauen, die völlig unabhängig von der Eingabenachricht ist.

Der vom Knoten verwendete Java-Code wird in einem Eclipse Java-Projekt gespeichert.

Der JavaCompute-Knoten befindet sich im Ablagefach Transformation der Palette und wird in der Workbench durch folgendes Symbol dargestellt:

Symbol für Rechenknoten

Diesen Knoten in einem Nachrichtenfluss verwenden

Der JavaCompute-Knoten verwendet das gleiche Ausführungsmodell wie die benutzerdefinierten Java-Knoten. Aus diesem Grund gelten die Einschränkungen und Annahmen, die mit benutzerdefinierten Java-Knoten verbunden sind, auch für den Java-Code, der für JavaCompute-Knoten entwickelt wurde. Weitere Informationen finden Sie unter Nachrichtenverarbeitungs- oder Sendeknoten in Java erstellen. Unabhängig von der Anzahl der im Fluss ausgeführten Threads (als Resultat zusätzlicher Instanzen oder mehrerer Empfangsknoten) wird nur eine Instanz des JavaCompute-Knotens erstellt. Aus diesem Grund muss der gesamte Java-Benutzercode threadsicher und simultan verwendbar sein. Sie finden weitere Informationen hierzu in den Abschnitten Ausführungsmodell der benutzerdefinierten Erweiterungen und Hinweise zum Threading bei benutzerdefinierten Erweiterungen.

Klicken Sie doppelt auf den JavaCompute-Knoten, um den Assistenten zum Erstellen einer neuen JavaCompute-Knotenklasse zu öffnen. Der Assistent führt Sie durch die Erstellung eines neuen Java-Projekts und einer Java-Klasse, die einen Gerüstcode enthält. Dieser Gerüstcode wird in einem Java-Editor angezeigt. Weitere Informationen zum Erstellen von Java-Code für einen JavaCompute-Knoten und Beispiele zu dem Gerüstcode oder zur Schablone, die bereitgestellt wurden, finden Sie unter Java-Code für einen JavaCompute-Knoten erstellen. Wenn Sie nicht zum ersten Mal doppelt auf den Knoten geklickt haben, wird der Java-Code angezeigt.

Das folgende Beispiel zeigt, wie dieser Knoten verwendet wird. Sie können Beispiele nur anzeigen, wenn Sie das Information Center verwenden, das im Message Brokers Toolkit integriert ist.

Java angeben

Codieren Sie Java-Anweisungen, um das Verhalten des JavaCompute-Knotens anzupassen. Sie können den Knoten beispielsweise so anpassen, dass er unter Verwendung einer Eingabenachricht oder eines Datenbankinhalts (unverändert oder bearbeitet) neue Ausgabenachrichten erstellt. Beispiel: Sie möchten einen Wert in der Eingabenachricht modifizieren, indem Sie einen Wert aus einer Datenbank hinzufügen. Das Ergebnis soll in einem Feld in der Ausgabenachricht gespeichert werden.

Codieren Sie die gewünschte Java-Anweisung in einer Java-Datei, die dem JavaCompute-Knoten zugeordnet ist.

Wenn für den Knoten noch keine Java-Datei vorhanden ist, klicken Sie mit der rechten Maustaste auf den JavaCompute-Knoten und klicken Sie anschließend auf Open Java (Java öffnen), um eine neue Java-Datei zu erstellen und in der Editoransicht zu öffnen. Wenn die Datei bereits vorhanden ist, klicken Sie neben der Eigenschaft Java-Klasse auf Durchsuchen. Daraufhin wird das Fenster Auswahl der JavaCompute-Knoten angezeigt, in dem die Java-Klassen, auf die von diesem Nachrichtenfluss zugegriffen werden kann, aufgelistet werden. Wählen Sie die geeignete Java-Klasse aus, und klicken Sie auf OK. In der Liste mit den übereinstimmenden Typen werden geeignete Java-Klassen angezeigt, wenn im Feld 'Auswählen' mindestens ein Zeichen eingegeben wurde. Wenn Sie '*' im Feld Auswählen eingeben, werden alle Java-Klassen gezeigt.

Einschränkung: Beginn der ÄnderungVersuchen Sie nicht, auf Basis des Java-Codes eine weitere Instanz eines JavaCompute-Knotens zu erstellen; dies wird nicht unterstützt.Ende der Änderung

Terminals und Eigenschaften

Nachdem Sie eine Instanz des JavaCompute-Knotens in einen Nachrichtenfluss eingereiht haben, können Sie ihn konfigurieren; siehe Nachrichtenflussknoten konfigurieren. Um eine Instanz eines JavaCompute-Knotens einer Java-Klasse zuzuordnen, müssen Sie die Eigenschaften des Knotens konfigurieren. Die Knoteneigenschaften werden in der Eigenschaftenansicht angezeigt. Klicken Sie zum Anzeigen der Eigenschaften im Eigenschaftsdialogfeld mit der rechten Maustaste auf den Knoten und dann im Kontextmenü auf Eigenschaften. Alle verbindlichen Eigenschaften, für die Sie einen Wert eingeben müssen (d. h. Eigenschaften ohne definierten Standardwert), sind mit einem Sternchen gekennzeichnet.

In der folgenden Tabelle werden die JavaCompute-Knotenterminals beschrieben .

Terminal Beschreibung
In Das Eingangsterminal, das eine Nachricht zur Verarbeitung durch einen Knoten annimmt
Failure Das Ausgabeterminal, an das die Nachricht geleitet wird, wenn während der Verarbeitung ein Fehler auftritt. (Selbst wenn die Eigenschaft Auswerten festgelegt ist, werden Nachrichten, die an das Fehlerterminal des Knotens weitergegeben werden, nicht ausgewertet.)
Out Das Ausgabeterminal, an das die umgewandelte Nachricht geleitet wird.
Alternative Ein alternatives Ausgabeterminal zum Ausgangsterminal, an das die umgewandelte Nachricht weitergeleitet werden kann.

In den folgenden Tabellen werden die Knoteneigenschaften beschrieben. Die Spalte O zeigt an, ob die Eigenschaft obligatorisch ist (markiert mit einem Sternchen, wenn ein Wert eingegeben werden muss, weil kein Standardwert definiert ist). Die Spalte K zeigt an, ob die Eigenschaft konfigurierbar ist (Wert kann geändert werden, wenn der Nachrichtenfluss zur BAR-Datei hinzugefügt wird, um ihn einzusetzen).

In der folgenden Tabelle werden die Beschreibungseigenschaften des JavaCompute-Knotens beschrieben.

Eigenschaft O K Standardwert Beschreibung
Knotenname Nein Nein Der Knotentyp: JavaCompute Der Name des Knotens.
Kurzbeschreibung Nein Nein   Kurze Beschreibung des Knotens
Ausführliche Beschreibung Nein Nein   Text, der den Zweck des Knotens im Nachrichtenfluss beschreibt

Der JavaCompute-Knoten verfügt über die Basiseigenschaft, die in der folgenden Tabelle beschrieben wird.

Eigenschaft O K Standardwert Beschreibung
Java-Klasse Ja Nein Keine Der Name der Java-Klasse, die in diesem Knoten verwendet wird. Dieser Name muss sich in der Liste mit den Java-Klassen befinden, die sich im Projektverweis für das Nachrichtenflussprojekt befinden.

In der folgenden Tabelle werden die Eigenschaften der Parser-Optionen für den JavaCompute-Knoten beschrieben.

Eigenschaft O K Standardwert Beschreibung
Zeitpunkt für Syntaxanalyse Ja Nein Bei Bedarf Durch diese Eigenschaft wird gesteuert, zu welchem Zeitpunkt eine Eingabenachricht syntaktisch analysiert wird. Gültige Werte sind Bei Bedarf, Sofort und Vollständig. Diese Eigenschaft ist standardmäßig auf Bei Bedarf gesetzt, d. h., die Gültigkeitsprüfung wird verschoben, bis im Rahmen einer Teil-Syntaxanalyse eine Syntaxanalyse erfolgt. Wenn Sie den Wert für diese Option in Sofort ändern, wird die Teil-Syntaxanalyse außer Kraft gesetzt. In diesem Fall werden alle Nachrichtenkomponenten syntaktisch analysiert und ausgewertet. Eine Ausnahme stellen dabei diejenigen komplexen Typen mit der Zusammensetzung 'Auswahl' oder 'Nachricht' dar, die zu diesem Zeitpunkt nicht aufgelöst werden können und zu einem Auswertungsfehler führen. Wenn Sie diesen Wert in Vollständig ändern, wird die Teil-Syntaxanalyse außer Kraft gesetzt und alle Nachrichtenkomponenten syntaktisch analysiert und ausgewertet.

Eine vollständige Beschreibung dieser Eigenschaft finden Sie unter Bedarfsgerechte Syntaxanalyse.

MQRFH2C-Kompaktparser für MQRFH2-Domäne verwenden Nein Nein Nicht ausgewählt Durch diese Eigenschaft wird gesteuert, ob der MQRFH2C-Kompaktparser anstelle des MQRFH-Parsers für MQRFH2-Header verwendet wird.
XMLNSC-Kompaktparser für XMLNS-Domäne verwenden Nein Nein Nicht ausgewählt Durch Festlegung dieser Eigenschaft wird im MQRFH2-Header der ausgehenden Nachricht der Parser XMLNS statt des Parsers XMLNSC angegeben. Dies bedeutet, dass eine externe Anwendung nicht geändert werden muss. Wenn ausgehende Nachrichten keine MQRFH2-Header enthalten, hat diese Eigenschaft keine Auswirkungen.
Zugriff auf gemischten Inhalt Nein Nein Nicht ausgewählt Mit dieser Eigenschaft können Sie steuern, ob der XMLNSC-Parser Elemente in der Nachrichtenbaumstruktur erstellt, wenn er gemischten Text in einer Eingabenachricht feststellt. Wenn Sie das Kontrollkästchen aktivieren, werden Elemente für gemischten Text erstellt. Andernfalls wird gemischter Text ignoriert, und es werden keine Elemente erstellt.
Kommentare beibehalten Nein Nein Nicht ausgewählt Mit dieser Eigenschaft können Sie steuern, ob der XMLNSC-Parser Elemente in der Nachrichtenbaumstruktur erstellt, wenn er Kommentare in einer Eingabenachricht feststellt. Wenn Sie das Kontrollkästchen aktivieren, werden Elemente für Kommentare erstellt. Andernfalls werden Kommentare ignoriert, und es werden keine Elemente erstellt.
Verarbeitungsanweisung beibehalten Nein Nein Nicht ausgewählt Mit dieser Eigenschaft können Sie steuern, ob der XMLNSC-Parser Elemente in der Nachrichtenbaumstruktur erstellt, wenn er Verarbeitungsanweisungen in einer Eingabenachricht feststellt. Wenn Sie das Kontrollkästchen aktivieren, werden Elemente für Verarbeitungsanweisungen erstellt. Andernfalls werden Verarbeitungsanweisungen ignoriert, und es werden keine Elemente erstellt.

In der folgenden Tabelle werden die Auswertungseigenschaften des JavaCompute-Knotens beschrieben.

Legen Sie die Auswertungseigenschaften fest, damit der Parser den Hauptteil von Nachrichten anhand der Nachrichtengruppe überprüft. Wenn eine Nachricht an das Fehlerterminal des Knotens übergeben wird, wird sie nicht ausgewertet. Sie finden weitere Informationen hierzu in den Abschnitten Nachrichten überprüfen und Auswertungseigenschaften.

Eigenschaft M C Standardwert Beschreibung
Auswerten Nein Ja Keines Durch diese Eigenschaft wird gesteuert, ob eine Auswertung stattfindet und welche Nachrichtenbereiche ausgewertet werden. Gültige Werte sind Keine, Inhalt und Wert, Inhalt und Übernehmen.
Aktion bei Fehler Nein Nein Ausnahme Durch diese Eigenschaft wird gesteuert, was beim Fehlschlagen der Auswertung geschieht. Diese Eigenschaft kann nur festgelegt werden, wenn Sie Auswerten auf Inhalt oder Inhalt und Wert setzen. Gültige Werte sind Benutzertrace, Lokales Fehlerprotokoll, Ausnahmebedingung und Ausnahmeliste.
Alle Wertvorgaben einschließen Nein Nein Ausgewählt Diese Eigenschaft kann nicht bearbeitet werden. Wenn das Kontrollkästchen aktiviert ist (Standardeinstellung), werden alle Wertvorgaben in die Auswertung eingeschlossen.
Korrektur Nein Nein Keines Diese Eigenschaft kann nicht bearbeitet werden. Es wird eine minimale Korrektur vorgenommen. Gültige Werte sind Keine und Vollständig.
Zugehörige Konzepte
Nachrichtenflüsse - Übersicht
Bemerkungen | Marken | Downloads | Bibliothek | Unterstützung | Feedback

Copyright IBM Corporation 1999, 2009Copyright IBM Corporation 1999, 2009.
Letzte Aktualisierung : 2009-02-17 15:28:25

ac20805_