Untergeordneter Fehlernachrichtenfluss für das Muster Message Splitter for WebSphere MQ: one-way (for XML) (Nachrichtenverteiler für WebSphere MQ:
unidirektional (bei XML))
Bei einem Fehler können Sie die Fehlernachricht über den untergeordneten Fehlernachrichtenfluss weiterleiten.
Führen Sie zum Weiterleiten der Fehlernachricht eine der folgenden Aktionen aus:
- Alle Nachrichtenelemente speichern, die nicht in eine separate Warteschlange für fehlerhafte Nachrichten weitergeleitet werden können, und alle anderen Elemente weiter verarbeiten
- Transaktion abbrechen und die Eingabenachricht zurücksetzen
Bei einem Fehler im Routing-Nachrichtenfluss wird die weitergegebene Nachricht mit nur einem
Nachrichtenelement an das Fehlerterminal des untergeordneten Routing-Nachrichtenflusses übertragen. Der Fehlerstatus wird in Environment.PatternVariables.FailureStatus aufgezeichnet, und die Anzahl der fehlerhaften Elemente wird erhöht.
Wählen Sie eine Aktion für fehlerhafte Nachrichten aus, um die
Aktion festzulegen, die nach einem Fehler ausgeführt werden soll:
- Speichern
- Der Failure-Knoten wird mit einem MQOutput-Knoten verbunden und das Nachrichtenelement wird in die Warteschlange für fehlerhafte Nachrichten geschrieben. Die Steuerung wird wieder an die Verarbeitungsschleife des Compute-Knotens des Nachrichtenverteilers übergeben und die Verarbeitung wird fortgesetzt.
- Wenn alle Datensätze verarbeitet sind, übergibt der Compute-Knoten des Nachrichtenverteilers
die Steuerung an den untergeordneten Fehlernachrichtenfluss, der überprüft, ob fehlerhafte
Nachrichtenelemente gespeichert sind. Wenn fehlerhafte Nachrichtenelemente gespeichert und
Fehlernachrichten erforderlich sind, wird eine Fehlernachricht erstellt, die die Anzahl der
fehlerhaften Elemente angibt.
- Abbrechen
- Der Failure-Knoten des untergeordneten Routing-Nachrichtenflusses wird nicht verbunden und
Routing-Fehler werden an den Compute-Knoten des Nachrichtenverteilers zurückgegeben, der den
Fehlerstatus ermittelt und eine Ausnahmebedingung generiert. Ausnahmebedingungen, bei denen es sich
nicht um Routing-Fehler handelt, haben zur Folge, dass die Aktion
Abbrechen ausgeführt wird. Alle diese Ausnahmebedingungen werden
als nicht wiederherstellbare Fehler betrachtet, d. h., eine Weiterverarbeitung wäre nicht ratsam.
- Wenn Fehlernachrichten erforderlich sind, wird eine Fehlernachricht erzeugt und in die
Fehlerwarteschlange geschrieben.
Details zur
Ausnahmebedingung werden als XML-Nachricht geschrieben. Zu den Details gehören:
- Brokername
- Nachrichtenflussname
- Zeitmarke
- Zusammenfassung der Ausnahmedaten
- Ein Benutzerfehler wird generiert, durch den die Eingabenachricht und alle bereits
verarbeiteten Nachrichtenelemente zurückgesetzt werden. In diesem Fall muss innerhalb der WebSphere
MQ-Infrastruktur ein Zurücksetzungsmechanismus aktiv sein, der zum Beispiel eine
Zurücksetzungswarteschlange verwendet.
Rücksetzungen finden nicht für Ausnahmebedingungen statt,
die auftreten, nachdem alle Nachrichtenelemente erfolgreich geschrieben wurden. Dieser Typ von
Ausnahmebedingung kann in Fehlernachrichten oder Protokollnachrichten vorkommen.