Ausnahmen des Transaktionsservice

Die Ausnahmen, die der Transaktionsservice von WebSphere Application Server auslösen kann, sind zusammen mit einer entsprechenden Erläuterung aufgelistet.

Die Ausnahmen sind wie folgt gruppiert:

Wenn der EJB-Container eine Ausnahme des Systems von der Geschäftsmethode einer Enterprise-Bean abfängt und die Methode im Rahmen einer containergesteuerten Transaktion ausgeführt wird, setzt der Container die Transaktion zurück, bevor er die Ausnahme an den Client übergibt. Weitere Informationen dazu, wie der Container Ausnahmen behandelt, die von den Geschäftsmethoden für Beans mit containergesteuerter Transaktionsdemarkation ausgelöst werden, finden Sie im Abschnitt Exception handling in der Spezifikation Enterprise JavaBeans 2.0 . In diesem Abschnitt werden die Aktion des Containers als Funktion der Bedingung, unter der die Geschäftsmethode ausgeführt wird, sowie die von der Geschäftsmethode ausgelöste Geschäftsmethode angegeben. Außerdem wird die vom Client empfangene Ausnahme veranschaulicht, und es wird erläutert, wie der Client nach der Ausnahme eine Wiederherstellung durchführen kann.

Standardausnahmen

Die Standardausnahmen wie TransactionRequiredException, TransactionRolledbackException und InvalidTransactionException sind in der Spezifikation Java™ Transaction API (JTA) 1.1 definiert.
InvalidTransactionException
Diese Ausnahme zeigt an, dass die Anforderung einen ungültigen Transaktionskontext übertragen hat.
TransactionRequiredException
Diese Ausnahme zeigt an, dass eine Anforderung keine Transaktionskontext übertragen hat, für das Zielobjekt jedoch eine aktive Transaktion erforderlich ist.
TransactionRolledbackException
Diese Ausnahme zeigt an, dass die Transaktion, die der Verarbeitung der Anforderung zugeordnet ist, zurückgesetzt bzw. für das Zurücksetzen markiert wurde. Die angeforderte Operation konnte entweder nicht ausgeführt werden oder wurde nicht ausgeführt, weil eine weitere Berechnung für die Transaktion zu keinem Ergebnis geführt hätte.

Heuristische Ausnahmen

Eine heuristische Entscheidung ist unilateral. Sie wird von einem oder mehreren Teilnehmern einer Aktion getroffen, die darauf abzielt, Aktualisierungen festzuschreiben (COMMIT-Operation) bzw. zurückzusetzen (ROLLBACK-Operation), ohne zuvor das vom Transaktionsservice festgelegte Konsensergebnis abzurufen. Heuristische Entscheidungen kommen nur zum Tragen, nachdem der Teilnehmer vorbereitet wurde und die zweite Phase der COMMIT-Verarbeitung durchgeführt wird. Heuristische Entscheidungen werden normalerweise unter ungewöhnlichen Bedingungen getroffen. Beispiel: Wiederholte fehlgeschlagene Versuche des Transaktionsmanagers, während der zweiphasigen Festschreibung (COMMIT-Operation) mit einem Ressourcenmanager zu kommunizieren. Wenn eine heuristische Entscheidung getroffen wurde, besteht das Risiko, dass die Entscheidung vom Konsensergebnis abweicht und die Datenintegrität verloren geht.

Die folgende Liste enthält eine Zusammenfassung der heuristischen Ausnahmen. Ausführlichere Einzhelheiten finden Sie in der Spezifikation Java Transaction API (JTA) 1.1.

HeuristicRollback
Diese Ausnahme bezieht sich auf die COMMIT-Operation und bedeutet, dass eine heuristische Entscheidung getroffen wurde und alle relevanten Aktualisierung zurückgesetzt wurden.
HeuristicMixed
Diese Ausnahme bezieht sich auf die COMMIT-Operation und bedeutet, dass eine heuristische Entscheidung getroffen wurde und dass einige relevante Aktualisierungen festgeschrieben und andere zurückgesetzt wurden.

Symbol, das den Typ des Artikels anzeigt. Referenzartikel



Symbol für Zeitmarke Letzte Aktualisierung: 25.05.2016
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=rjta_except
Dateiname:rjta_except.html