Show TOC Anfang des Inhaltsbereichs

Funktionsdokumentation Ausnahmebehandlung  Dokument im Navigationsbaum lokalisieren

Verwendung

In einem Integrationsprozess können Situationen auftreten, in denen der Integrationsprozess nicht normal fortgesetzt werden kann (z. B. bei Systemfehlern) oder die normale Fortsetzung nicht sinnvoll ist. Solche Situationen können Sie bereits bei der Definition des Prozesses in Form von Ausnahmen und zugehörigen Ausnahmebehandlern berücksichtigen.

Ausnahme auslösen

Folgende Tabelle zeigt, in welchen Schritttypen Sie welche Ausnahmen definieren können.

 

Schritttyp

Ausnahme für

Beschreibung

Sendeschritt – asynchron, synchron

Systemfehler

Wird bei einem permanenten Systemfehler ausgelöst:

Bei einem asynchronen Sendeschritt wird die Ausnahme nur bei einem Übertragungsfehler an die Pipeline ausgelöst. Fehler, die z. B. beim Mapping in der Pipeline auftreten, lösen die Ausnahme nicht aus.

Bei einem synchronen Sendeschritt wird die Ausnahme auch bei permanenten Systemfehlern ausgelöst, die in der Pipeline oder beim Transport von oder zur Pipeline auftreten.

Sendeschritt – synchron

Anwendungsfehler

 

Pro Fault-Message, die im synchronen Interface definiert ist, können Sie eine Ausnahme definieren. Wird ausgelöst, wenn die entsprechende Fault-Message empfangen wird.

Transformationsschritt

Systemfehler

Wird bei einem permanenten Systemfehler ausgelöst.

Steuerungsschritt

Beliebige Ausnahmesituationen

Wird bei Erreichen des Steuerungsschritts ausgelöst.

 

Hinweis

Der Name einer Ausnahme muss innerhalb des Blocks und in der darüber liegenden Blockhierarchie eindeutig sein.

Ausnahmebehandler

Die Reaktion auf eine Ausnahme, also den Ausnahmebehandler, definieren Sie in einem eigenen Verarbeitungszweig an einem Block. Der Ausnahmebehandler hat Lese- und Schreibzugriff auf alle Daten innerhalb des Blocks.

Wird zur Laufzeit eine Ausnahme ausgelöst, sucht das System den zugehörigen Ausnahmebehandler zuerst am umgebenden Blocks und dann jeweils im nächst äußeren Block in der Blockhierarchie.

Findet das System den Ausnahmebehandler, stoppt es alle aktiven Schritte des Blocks, an dem der Ausnahmebehandler definiert ist, und setzt die Verarbeitung im Zweig für die Ausnahmebehandlung fort. Nach der Abarbeitung des Ausnahmebehandlers wird der Prozess nach dem Block normal fortgesetzt.

Findet das System keinen Ausnahmebehandler, bricht der Integrationsprozess mit Fehler ab.

Beispiel

Tritt bei einem Sendeschritt ein Systemfehler auf, soll ein Alert für das Alert Management ausgelöst und anschließend der Integrationsrozess abgebrochen werden. Um dies zu erreichen, gehen Sie wie folgt vor:

Sie definieren im Sendeschritt für die Eigenschaft Ausnahme/Systemfehler die Ausnahme Sendefehler.

Am entsprechenden Block fügen Sie über das Kontextmenü des Blocks einen Zweig als Ausnahmebehandler hinzu. In den Eigenschaften des Zweigs geben Sie die Ausnahme Sendefehler an. In den Zweig fügen Sie einen Steuerungsschritt ein, der den gewünschten Alert auslöst. Dahinter fügen Sie einen Steuerungsschritt ein, der den Integrationsprozess abbricht.

Ende des Inhaltsbereichs