Inject-Annotation einer Stateless-Bean

oraclin25

Erfahrenes Mitglied
Hallo zusammen,

sowie ich verstanden habe, ist die Annotation @Inject eigentlich einfach wie ein new-Operator. Darum können wir mittels @Inject keine Stateless-Bean mit Remote-Interface injizieren.

Meine Frage:
Wenn ich eine Stateless-Bean habe und diese ist von Local-Interface, und ich diese Bean mittels @Inject irgendwohin injiziere, wird denn trotzdem eine Transaktion erstellt, wenn eine Methode dieser Bean aufgerufen wird?

Vielen Dank für die Antwort.

Viele Grüße aus Rheinland,

Eure Ratna
 

saftmeister

Nutze den Saft!
Transaktionshandling ist keine Frage ob local oder remote Interface. Eine Transaktion wird dann vom Applicationserver erstellt, sobald eine nötig wird. Das erledigt man idR. über die @TransactionXXX-Annotation, die entweder an der Methode oder der Klasse hängt. Damit kann man den Transaktionskontext steuern und somit bspw. dafür sorgen, dass eine bestehende Transaktion verwendet werden (Required), eine neue erstellt werden soll (Requires_New) oder eine vorhanden sein muss (Mandatory). Hier eine Liste der möglichen Werte und Erklärung: http://openejb.apache.org/transaction-annotations.html