Ich habe ein seltsames Problem mit der Federtransaktion festgestellt. Meine Anwendung verwendet Spring mit EJBs. Die EJBs rufen auch Spring-Serviceklassen auf, die mit @Transaction
kommentiert sind. Ich habe Spring JtaTransactionManager
für das Transaktionsmanagement verwendet. Die Anwendung ist als EAR-Datei gepackt und wird auf jboss5.0 bereitgestellt und es funktioniert gut. Aber wenn ich jboss beauftrage, für jede EAR-Anwendung einen separaten Klassenlader zu verwenden, gibt die Federinitialisierung einen Fehler.Keine JTA UserTransaction verfügbar - geben Sie 'userTransaction' oder 'userTransactionName' an
org.springframework.beans.factory.BeanCreationException: Error creating bean
with name 'transactionManager' defined in ServletContext resource
[/WEB-INF/applicationContext.xml]: Invocation of init method failed;
nested exception is java.lang.IllegalStateException: No JTA UserTransaction
available - specify either 'userTransaction' or 'userTransactionName' or
'transactionManager' or 'transactionManagerName'
Warum Initialisierung der Feder ist nicht erfolgreich?
Dank
Welche Einstellung haben Sie in JBoss geändert? – skaffman
Ich habe die Datei "ear-deployer-jboss-beans.xml" im Verzeichnis "deplosers" geändert, um die Eigenschaft "isolated" auf "true" zu setzen. – Chir