Die LocalEnvironment-Baumstruktur ist ein Teil der logischen Nachrichtenbaumstruktur, in der Sie Informationen speichern können, während der Nachrichtenfluss die Nachricht verarbeitet.
Das Stammverzeichnis der LocalEnvironment-Baumstruktur lautet 'LocalEnvironment'. Diese Baumstruktur ist immer in der Eingabenachricht vorhanden: eine leere LocalEnvironment-Baumstruktur wird erstellt, wenn eine Nachricht vom Empfangsknoten empfangen wird.
Nutzen Sie die LocalEnvironment-Baumstruktur, um Variablen zu speichern, auf die verwiesen werden kann und die von Nachrichtenverarbeitungsknoten, die später im Nachrichtenfluss auftreten, aktualisiert werden können. Die LocalEnvironment-Baumstruktur kann ebenfalls zum Definieren von Zieladressen (die intern und extern gegenüber dem Nachrichtenfluss sind) verwendet werden, an die eine Nachricht gesendet wird. WebSphere Message Broker speichert in einigen Fällen auch Informationen in der lokalen Umgebung und referenziert sie für den Zugriff auf Werte, die Sie möglicherweise für Zieladressen festgelegt haben. (Dies unterscheidet sich von Umgebungsbaumstruktur (Environment), wo der Broker nur in einer Situation referenziert.)
Die folgende Abbildung zeigt die LocalEnvironment-Baumstruktur. Die untergeordneten Elemente von 'Destination' hängen vom Protokoll ab. Das unten stehende Beispiel zeigt die Struktur für eine WebSphere MQ-Nachricht. Falls die Nachricht von einem anderen integrierten oder einem benutzerdefinierten Parser analysiert wird, hat die Baumstruktur unter dem Destination-Element einen anderen Inhalt als in der Abbildung.
In der oben gezeigten Baumstruktur hat 'LocalEnvironment' drei untergeordnete Elemente:
'Variables' in der lokalen Umgebung kann von jedem nachfolgenden Nachrichtenverarbeitungsknoten geändert werden und bleibt so lange bestehen, bis der Nachrichtenfluss den Bereich verlässt und der Knoten, von dem er erstellt wurde, seine Arbeit beendet und die Steuerung an den vorherigen Knoten zurückgibt.
Die Variablen in dieser Baumstruktur sind nur innerhalb einer einzelnen Instanz eines Nachrichtenflusses permanent. Wenn mehrere Instanzen einer Nachricht durch den Nachrichtenfluss transportiert werden und zwischen diesen Instanzen Informationen ausgetauscht werden müssen, müssen Sie eine externe Datenbank verwenden.
Die Transportinformation werden von einigen Empfangs- und Sendeknoten verwendet.
Wenn der Nachrichtenfluss mit einem HTTPEmpfangsknoten beginnt, wird ein einzelnes HTTP-Namenselement zu 'Destination' hinzugefügt. Das Element 'HTTP.RequestIdentifier' wird erstellt und initialisiert, so dass es von einem HTTPAntwortknoten verwendet werden kann. Sie können auch andere Felder in der HTTP-Struktur erstellen, die vom HTTPAnforderungsknoten verwendet werden, z. B. für den URL des Services, an den die Anforderung gesendet wird. Die Abschnitte zu den einzelnen Knoten enthalten weitere Informationen zum Inhalt von 'Destination' für das WebSphere MQ Web Services Transport-Protokoll.
Enthält der Nachrichtenfluss einen MQSendeknoten, ist jedes Element ein einzelnes Namenselement (MQDestinationList). Sind mehrere Elemente vorhanden, werden sie nacheinander vom Knoten verarbeitet.
Falls Sie im Nachrichtenfluss einen benutzerdefinierten Sendeknoten einbezogen haben, wird der Inhalt von 'Destination' (falls unterstützt) von diesem Knoten definiert.
Sie können Sendeknoten so konfigurieren, dass sie die Liste mit Zieladressen untersuchen und die Nachricht an diese Zieladressen senden, indem Sie die Eigenschaft Destination Mode (Zielmodus) auf Destination List (Zieladressenliste) einstellen. Hierzu müssen Sie diese untergeordnete Baumstruktur und deren Inhalt erstellen, um diese Zieladressen zu definieren, und ihr den Namen 'Destination' geben. Tun Sie dies nicht, kann der Sendeknoten die Nachrichten nicht zustellen.
Falls Sie es vorziehen, können Sie den Sendeknoten so konfigurieren, dass er Nachrichten an eine einzelne feste Zieladresse sendet. Stellen Sie hierzu die Eigenschaft Destination Mode (Zielmodus) auf Queue Name (Warteschlangenname) oder Reply To Queue (An Warteschlange antworten) ein. Wählen Sie eine dieser festen Optionen aus, hat die Zieladressenliste keine Wirkung auf Brokeroperationen, und Sie müssen diese untergeordnete Baumstruktur nicht erstellen.
Sie können die MQ-Elemente so anlegen, dass sie ein einzelnes optionales Defaults-Element enthalten. Das Defaults-Element, falls es erstellt wird, muss das erste untergeordnete Element sein und einen Satz mit Namenswertelementen enthalten, die Standardwerte für die Nachrichtenzieladresse und den PUT-Optionen für das übergeordnete Element ausgeben.
Sie können ebenfalls eine Reihe von Elementen mit der Bezeichnung 'DestinationData' in MQ erstellen. Jedes davon kann mit einem Satz von Namenswertelementen konfiguriert werden, der eine Nachrichtenzieldadresse und PUT-Optionen definiert.
Der Elementsatz, der eine Zieladresse definiert, wird in Datentypen für Elemente in der untergeordneten Zieldaten-Baumstruktur beschrieben.
Der Inhalt von jeder Instanz von 'DestinationData' ist der gleiche wie bei 'Defaults' für jedes Protokoll und kann verwendet werden, um die Standardwerte in 'Defaults' zu überschreiben. Sie können 'Defaults' so konfigurieren, dass Werte enthalten sind, die für alle Zieladressen einheitlich sind, und nur die eindeutigen Werte in jeder untergeordneten Baumstruktur 'DestinationData' einstellen. Wenn Sie weder in 'DestinationData' noch in 'Defaults' einen Wert angeben, wird der Wert, den Sie für die entsprechende Knoteneigenschaft festgelegt haben, verwendet. Ebenso wird ein Feldname mit einer falschen Schreibweise oder falscher Groß-/Kleinschreibung ignoriert und stattdessen der Wert verwendet, den Sie für die entsprechende Knoteneigenschaft festgelegt haben.
Die Informationen, die Sie in 'DestinationData' einfügen, hängen vom Merkmal der entsprechenden Knoteneigenschaft ab: Dies wird in Zugriff auf die Baumstruktur für die lokale Umgebung beschrieben.
Das untergeordnete Element von 'Destination' ist RouterList. Es hat ein einzelnes untergeordnetes Element mit der Bezeichnung DestinationData, das über einen einzelnen Eintrag mit der Bezeichnung 'labelName' verfügt. Falls Sie ein dynamisches Routingszenario verwenden, bei dem die Knoten 'Weiterleitung_an_Zieladresse' und Zieladressenknoten einbezogen sind, müssen Sie die untergeordnete Baumstruktur 'Destination' mit einem Element 'RouterList' konfigurieren, das die Referenzbezeichnungen enthält.
Das Thema für den jeweiligen Sendeknoten enthält weitere Informationen über den Inhalt von 'WrittenDestination' für WebSphere MQ und WebSphere MQ Everyplace.
Wenn die Verarbeitung des Nachrichtenflusses abgeschlossen ist, wird die LocalEnvironment-Baumstruktur verworfen.