Die Baumstruktur für Ausnahmelisten (ExceptionList) ist Bestandteil der logischen Nachrichtenbaumstruktur, in die der Nachrichtenfluss Informationen zu Ausnahmebedingungen schreibt, die bei der Verarbeitung einer Nachricht auftreten.
Das Stammverzeichnis der Baumstruktur für Ausnahmelisten heißt 'ExceptionList' (Ausnahmeliste), und die Baumstruktur enthält keine oder mehrere Ausnahmebeschreibungen. Die Baumstruktur 'ExceptionList' wird vom Nachrichtenfluss mit Daten gefüllt, wenn eine Ausnahmebedingung auftritt. Wenn während der Nachrichtenflussverarbeitung keine Ausnahmebedingungen auftreten, besteht die Ausnahmeliste, die dieser Nachricht zugeordnet ist, nur aus einem Stammelement. Im Klartext ist dies eine leere Ausnahmebedingungsliste.
Der Zugriff auf die Baumstruktur 'ExceptionList' ist über andere Knoten im Nachrichtenfluss möglich, die die Nachricht nach dem Auftreten der Ausnahmebedingung empfangen haben. Der Inhalt kann nur im Rechenknoten geändert werden.
Wenn eine Ausnahme auftritt, wird die Nachrichtenverarbeitung ausgesetzt, und es wird eine Ausnahmebedingung ausgegeben. Die Steuerung geht an eine höhere Ebene über, d. h. an einen umschließenden Abfangblock. Eine Ausnahmeliste wird zur Beschreibung der Fehlerbedingung erstellt, und die gesamte Nachricht wird gemeinsam mit der lokalen Umgebung und der gerade gefüllten Ausnahmeliste über einen Nachrichtenflusspfad zur Verarbeitung von Ausnahmebedingungen weitergegeben.
Dem Eintrag 'ExceptionList' ist immer das Element 'RecoverableException' (Behebbare Ausnahmebedingung) untergeordnet. Normalerweise enthält das Stammverzeichnis nur ein untergeordnetes Element; unter gewissen Umständen können jedoch auch mehrere Elemente generiert werden. Das untergeordnetes Element der Ausnahmeliste enthält wiederum eine Reihe von untergeordneten Elementen, wovon das letzte weitere Informationen in Bezug auf den Ausnahmetyp bereitstellt. Folgende Typen sind möglich:
Die Struktur für 'RecoverableException' in der Baumstruktur für Ausnahmelisten wird unten dargestellt:
Die Struktur der Ausnahmebeschreibung kann sowohl wiederholt als auch verschachtelt sein und so eine Baumstruktur des Typs 'ExceptionList' erstellen. In dieser Baumstruktur gilt Folgendes:
Die untergeordneten Elemente in der Baumstruktur bestehen aus mehreren Namens-/Wertelementen, die detaillierte Informationen zur Ausnahmebedingung bieten, sowie aus keinen oder mehreren Namenselementen, deren Name 'Insert' lautet. Die NLS-Nachrichtennummer (NLS = National Language Support, Unterstützung der Landessprache), die in einem Namens-/Wertelement angegeben ist, identifiziert eine Fehlernachricht von WebSphere Message Broker. Die Insert-Werte werden zum Ersetzen der Variablen in dieser Nachricht verwendet und bieten detaillierte Informationen zur Ursache der Ausnahmebedingung.
Die Namens-/Wertelemente in der Ausnahmeliste, die in der obigen Abbildung dargestellt sind, werden in der folgenden Tabelle erläutert.
Name | Typ | Beschreibung: | |
---|---|---|---|
File1 | Zeichenfolge | Name der C++-Quellendatei | |
Line1 | Integer | Zeilennummer der C++-Quellendatei | |
Function1 | Zeichenfolge | Name der C++-Quellenfunktion | |
Type2 | Zeichenfolge | Typ des Quellenobjekts | |
Name2 | Zeichenfolge | Name des Quellenobjekts | |
Label2 | Zeichenfolge | Kennsatz des Quellenobjekts | |
Text1 | Zeichenfolge | Zusätzlicher Text | |
Catalog3 | Zeichenfolge | Name des NLS-Nachrichtenkatalogs4 | |
Severity3 | Integer | 1 = Information |
|
Number3 | Integer | NLS-Nachrichtennummer4 | |
Insert3 | Typ | Integer | Der Datentyp des Werts: 0 = Unbekannt |
Text | Zeichenfolge | Der Datenwert | |
Hinweise:
|
Sobald die Verarbeitung des Nachrichtenflusses abgeschlossen ist, wird die Baumstruktur für Ausnahmelisten gelöscht.
Das Beispielprogramm 'Airline Reservations' verwendet die Ausnahmeliste im XML_Reservation-Nachrichtenfluss zur Weiterleitung von Fehlerinformationen an den Ausnahmeknoten, der eine Fehlernachricht generiert, die die Informationen aus der Ausnahmeliste enthält.