Mit dem TimeoutNotification-Knoten handhaben Sie zeitlimitabhängige Nachrichtenflüsse.
Dieses Thema ist in folgende Abschnitte eingeteilt:
Der TimeoutNotification-Knoten ist ein Empfangsknoten, der auf zwei Arten verwendet werden kann:
Der TimeoutNotification-Knoten verarbeitet Nachrichten zur Zeitlimitüberschreitung bei einer Anforderung, die von den TimeoutControl-Knoten, mit denen er paarweise verbunden ist, gesendet werden und gibt Kopien der Nachrichten (oder ausgewählte Fragmente der Nachrichten) an den nächsten Knoten im Nachrichtenfluss weiter.
Generierte Nachrichten werden an den nächsten Knoten im Nachrichtenfluss weitergegeben. Dies geschieht zu Zeitintervallen, die in der Konfiguration dieses Knotens angegeben sind.
Der TimeoutNotification-Knoten befindet sich im Ablagefach Zeitgeber der Palette und wird im WebSphere Message Broker Toolkit durch folgendes Symbol dargestellt:
Ein TimeoutControl-Knoten und ein TimeoutNotification-Knoten werden gemeinsam in einem Nachrichtenfluss für eine Anwendung verwendet, bei der Ereignisse zu einem bestimmten Zeitpunkt oder in regelmäßigen Abständen auftreten müssen, z. B. wenn ein Stapeljob täglich um Mitternacht ausgeführt werden soll oder stündlich Informationen zu Wechselkursen an Banken gesendet werden sollen.
Sie können mehrere TimeoutControl-Knoten bei einem TimeoutNotification-Knoten verwenden. Zeitlimitanforderungen, die von diesen TimeoutControl-Knoten initialisiert werden, werden alle von demselben TimeoutNotification-Knoten verarbeitet, wenn für den TimeoutNotification-Knoten und die einzelnen TimeoutControl-Knoten eine identische Eindeutige Kennung verwendet wird. Dieselbe eindeutige ID darf jedoch nicht für mehrere TimeoutNotification verwendet werden.
Zeitlimitanforderungen werden zur Verarbeitung in einer vom TimeoutNotification-Knoten verwendeten Warteschlange gespeichert. Standardmäßig wird hierzu die Warteschlange SYSTEM.BROKER.TIMEOUT.QUEUE verwendet. Mittels eines konfigurierbaren Zeitgeberservice können Sie allerdings auch eine andere Warteschlange für Zeitlimitanforderungen angeben, die eine bessere Kontrolle über das Speichern der Nachrichten bietet. Informationen zur Verwendung einer alternativen Zeitlimitwarteschlange finden Sie im Abschnitt Speichern der Ereignisse von Timeout-Knoten konfigurieren.
Wenn ein TimeoutNotification-Knoten durch das Starten des Brokers oder durch den Nachrichtenfluss, in dem der startende Knoten enthalten ist, gestartet wird, durchsucht er seinen internen Zeitlimitspeicher und löscht sämtliche nicht persistenten Zeitlimitanforderungen. Für persistente Zeitlimitanforderungen, die ausgeführt wurden und deren Eigenschaft IgnoreMissed auf False gesetzt wurde, werden Benachrichtigungen ausgegeben.
CREATE NEXTSIBLING OF OutputRoot.Properties DOMAIN 'MQMD';
SET OutputRoot.MQMD.Version = MQMD_CURRENT_VERSION;
SET OutputRoot.MQMD.Format = 'XML';
Informationen zu Beispielen können nur bei Verwendung des in das WebSphere Message Broker Toolkit integrierten bzw. online verfügbaren Information Center angezeigt werden. Muster können nur ausgeführt werden, wenn das im WebSphere Message Broker Toolkit integrierte Information Center verwendet wird.
Nachdem Sie eine Instanz des TimeoutNotification-Knotens in einen Nachrichtenfluss eingereiht haben, können Sie den Knoten konfigurieren; siehe Nachrichtenflussknoten konfigurieren. Die Eigenschaften des Knotens werden in der Ansicht 'Eigenschaften' angezeigt. Alle obligatorischen Eigenschaften, für die Sie einen Wert eingeben müssen (d. h. Eigenschaften ohne definierten Standardwert), sind mit einem Stern gekennzeichnet.
In der folgenden Tabelle werden die Terminals des TimeoutNotification-Knotens beschrieben.
Terminal | Beschreibung |
---|---|
Fehlerterminal (Failure) | Das Ausgabeterminal, an das die Eingabenachricht weitergegeben wird, wenn während der Verarbeitung in diesem Knoten ein Fehler auftritt. Zur Verarbeitung dieser Fehler können Knoten mit diesem Terminal verbunden werden. Wenn dieses Terminal nicht mit einem anderen Knoten verbunden ist, werden keine Nachrichten übergeben und die Daten werden nicht protokolliert oder gespeichert. |
Ausgang | Das Ausgabeterminal, an das die Nachrichten nach Ablauf des Zeitlimits weitergegeben werden.
|
Catch-Terminal | Das Ausgabeterminal, an das die Nachricht weitergegeben wird, wenn nachgeschaltet eine Ausnahmebedingung ausgegeben wurde. Wenn dieses Terminal nicht mit einem anderen Knoten verbunden ist, geschieht Folgendes:
|
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 TimeoutNotification-Knotens beschrieben.
Eigenschaft | O | K | Standardwert | Beschreibung |
---|---|---|---|---|
Knotenname | Nein | Nein | Der Knotentyp: TimeoutNotification | Der Name des Knotens. |
Kurzbeschreibung | Nein | Nein | Kurze Beschreibung des Knotens. | |
Langbeschreibung | Nein | Nein | Text, der den Zweck des Knotens im Nachrichtenfluss beschreibt. |
In der folgenden Tabelle werden die Basiseigenschaften des TimeoutNotification-Knotens beschrieben.
Eigenschaft | O | K | Standardwert | Beschreibung | Eigenschaft des Befehls mqsiapplybaroverride |
---|---|---|---|---|---|
Eindeutige Kennung | Ja | Ja | Ohne | Diese Eigenschaft gibt einen Wert an, der im Broker eindeutig und mit der Kennung identisch ist, die für die mit diesem Knoten paarweise verbundenen TimeoutControl-Knoten (falls vorhanden) angegeben wurde. Die maximale Länge dieser Kennung beträgt 12 Zeichen. Anhand dieses Namens wird auch der konfigurierbare Zeitgeberservice ermittelt (sofern vorhanden), der vom Knoten verwendet werden soll. Dieselbe Eindeutige Kennung darf nicht für mehrere TimeoutNotification-Knoten verwendet werden. |
uniqueIdentifier |
Transaktionsmodus | Nein | Nein | Ja | Der Transaktionsmodus für den Knoten. Wenn der Transaktionsmodus auf Automatisch gesetzt ist, basiert eine Transaktion auf der Permanenz der gespeicherten Nachrichten. Die Permanenz wird durch die Eigenschaft Permanenz anfordern des paarweise verbundenen TimeoutControl-Knoten gesteuert. Sie können diese Eigenschaft auf einen der folgenden Werte setzen:
|
|
Betriebsmodus | Nein | Nein | Automatisch | Diese Eigenschaft gibt an, ob der Knoten über paarweise verbundene TimeoutControl-Knoten verfügt. Gültige Werte sind:
|
|
Zeitlimitintervall | Nein | Ja | 1 | Das Intervall (in Sekunden) zwischen Zeitlimitanforderungen.
Diese
Eigenschaft ist nur relevant, wenn der
Betriebsmodus auf Automatisch
gesetzt wurde. Der Wert dieser Eigenschaft muss eine positive Ganzzahl sein. Wenn der Betriebsmodus auf Automatisch gesetzt ist, wird der Wert der Eigenschaft Zeitlimitintervall durch die Eigenschaft Zeitlimitintervall im konfigurierbaren Zeitgeberservice überschrieben (falls festgelegt). |
timeoutInterval |
In der folgenden Tabelle werden die Eigenschaften der Parser-Optionen für den TimeoutNotification-Knoten beschrieben.
Eigenschaft | O | K | Standardwert | Beschreibung |
---|---|---|---|---|
Zeitpunkt für Syntaxanalyse | Nein | Nein | Bei Bedarf | Durch diese Eigenschaft wird gesteuert, zu welchem Zeitpunkt die Zeitlimitnachricht 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 Syntaxanalyse der Nachricht wird verschoben. Wenn die Syntaxanalyse sofort ausgeführt werden soll, lesen Sie den Abschnitt Bedarfsgerechte Syntaxanalyse. |
Baumstruktur unter Verwendung von XML-Schemadatentypen erstellen | Nein | Nein | Nicht ausgewählt | Durch diese Eigenschaft wird gesteuert, ob der XMLNSC-Parser die Datentypen der in der Nachrichtenbaumstruktur erstellten Syntaxelemente aus dem XML-Schema entnimmt.Diese Eigenschaft kann nur ausgewählt werden, wenn für die Eigenschaft Auswerten auf der Registerkarte Auswertung Inhalt oder Inhalt und Wert festgelegt wurde. |
MQRFH2C-Kompaktparser für MQRFH2-Domäne verwenden | Nein | Nein | Nicht ausgewählt | Durch diese Eigenschaft wird gesteuert, ob der MQRFH2C-Kompaktparser anstelle des MQRFH2-Parsers für MQRFH2-Header verwendet wird. |
XMLNSC-Kompaktparser für XMLNS-Domäne verwenden | Nein | Nein | Nicht ausgewählt | Durch diese Eigenschaft wird gesteuert, ob der XMLNSC-Kompaktparser für Nachrichten in der XMLNS-Domäne verwendet wird. Wenn Sie diese Eigenschaft festlegen, werden die Nachrichtendaten unter XMLNSC in Knoten, die mit dem Ausgabeterminal verbunden sind, angezeigt, wenn XMLNS die Domäne des RFH2-Eingabeheaders oder der Standardeigenschaften ist. |
Gemischten Inhalt beibehalten | Nein | Nein | Ohne | Durch diese Eigenschaft wird gesteuert, ob der XMLNSC-Parser beim Erkennen von gemischtem Text in einer Zeitlimitnachricht Elemente in der Nachrichtenbaumstruktur erstellt. 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 | Ohne | Durch diese Eigenschaft wird gesteuert, ob der XMLNSC-Parser beim Erkennen von Kommentaren in einer Zeitlimitnachricht Elemente in der Nachrichtenbaumstruktur erstellt. 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 | Ohne | Durch diese Eigenschaft wird gesteuert, ob der XMLNSC-Parser beim Erkennen von Verarbeitungsanweisungen in einer Zeitlimitnachricht Elemente in der Nachrichtenbaumstruktur erstellt. Wenn Sie das Kontrollkästchen aktivieren, werden Elemente für Verarbeitungsanweisungen erstellt. Andernfalls werden Verarbeitungsanweisungen ignoriert und es werden keine Elemente erstellt. |
Nicht transparente Elemente | Nein | Nein | Leer | Mit dieser Eigenschaft wird eine Liste mit Elementen in der Zeitlimitnachricht angegeben, die vom XMLNSC-Parser auf nicht transparente Weise analysiert werden sollen. Die nicht transparente Syntaxanalyse wird nur ausgeführt, wenn keine Gültigkeitsprüfung aktiviert ist (das heißt, wenn Auswerten auf Keine gesetzt ist); Einträge, die in Nicht transparente Elemente angegeben sind, werden ignoriert, wenn die Gültigkeitsprüfung aktiviert ist. |
In der folgenden Tabelle werden die Auswertungseigenschaften des TimeoutNotification-Knotens beschrieben.
Wenn eine Nachricht an das Fehlerterminal (Failure) des Knotens übergeben wird, wird sie nicht ausgewertet. Sie finden weitere Informationen hierzu in den Abschnitten Nachrichten überprüfen und Auswertungseigenschaften.Eigenschaft | O | K | Standardwert | Beschreibung | Eigenschaft des Befehls mqsiapplybaroverride |
---|---|---|---|---|---|
Auswerten | Nein | Ja | Ohne | Durch diese Eigenschaft wird gesteuert, ob eine Auswertung stattfindet. Gültige Werte sind Keine,Inhalt und Inhalt und Wert. | validateMaster |
Aktion bei Fehler | Nein | Nein | Ausnahme | Durch diese Eigenschaft wird gesteuert, was beim Fehlschlagen der Auswertung geschieht. Diese Eigenschaft kann nur angegeben werden, wenn Auswerten auf Inhalt oder Inhalt und Wert gesetzt ist. Gültige Werte sind Benutzertrace, Lokales Fehlerprotokoll, Ausnahmebedingung und Ausnahmeliste. |
Eigenschaft | O | K | Standardwert | Beschreibung |
---|---|---|---|---|
Ereignisse | Nein | Nein | Ohne | Auf dieser Registerkarte werden Ereignisse angezeigt, die Sie für den Knoten
definiert haben. Standardmäßig sind für keinen Knoten in einem Nachrichtenfluss
Überwachungsereignisse definiert. Über Hinzufügen,
Bearbeiten und Löschen können Sie
Überwachungsereignisse für den Knoten erstellen, ändern oder löschen (Details siehe
Überwachungsereignisquellen mithilfe von Überwachungseigenschaften konfigurieren). Sie können hier angezeigte Ereignisse aktivieren oder inaktivieren, indem Sie das Kontrollkästchen Aktiviert aktivieren oder inaktivieren. |