Java Transaction API (JTA)

JTA wurde 1999 von Sun Microsystems definiert ind er Anlenung an Open Group DTP Spezifikation.
Die JTA API besteht nur aus zwei packages und Wenigen Klasen und Interfaces die man unter nagebenen Links fienden kann. Die Darstellung hier dient nur der Einordnung und dem Vergleich von JTA mit X/Open DTP

Vergleiche 2 Phase Commit Protocol

Aufbau

Zusammenfassend, besteht JTA aus drei Teilen, dem Aplikationsnahem transaktion demarcation Interface, dem Tranasktionsmanager interface (der eher für Applications Server ausgelegt ist) und dem Open Group XA-interface welcher von transaktionalen Resourcemanagern(RM) implementiret wird. 1).

Application Level Transaction Management

UserTransaktion Interface

javax.transaktion.UserTransaktion representiert die limitierte Ausgabe von Open Group TX Schnitstelle. Dieser Interface erlaububt es dem Anwendungsprogram die Grenzen wie Anfang und Ende der Transaktion programatisch zu bestimmen.
J2EE Spezifikation 1.3 das die Komponenten welche den UserTransaction interface nutzen können (z.B. EJB, Servlet, JSP)solten die Reference auf den Interfece durch den JNDI lookup bekommen.

// Erzeige JNDI Kontext
Context context = new InitialContext();
// Beschaffe  UserTransaction
UserTransaction ut = (UserTransaction) context.lookup("java:comp/UserTransaction");
// Starte die Transkation
ut.begin();
// ... RM zugriffe
ut.commit();

Ein EJB kann aber auch durch EJBContext.getUserTransaction() Methode auf die UserTransaktion Instanz zugreifen 2). Imgegensatz Zum EJB-Container, hat der Webkontainer keine Routinen für die Fehlerbehandlung so müssen begin(), commit() usw, in try{} und catch{} gesetzt werden.

Transaktion Manager Interface

FIXME

TA Manger zu RM Schnittstellen

XID Interface

FIXME

XAResource Interface

FIXME

1) Siehe XA-Schnitstelle uns Resource Manager in Open Goups DTP
2) Natürlich nur in einer BMP Deklaration
de/java/jta.txt · Last modified: %2008/%04/%26 %13:%Apr by aho
Translations of this page:
chimeric.de = chi`s home Creative Commons License Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0