ho incontrato uno strano problema con la transazione di primavera. La mia applicazione utilizza Spring con EJB. Gli EJB invocano anche le classi di servizio Spring annotate con @Transaction
. Ho usato Spring JtaTransactionManager
per la gestione delle transazioni. L'applicazione è impacchettata come un file EAR e viene distribuita su jboss5.0 e funziona correttamente. Ma quando ordino a jboss di usare un classloader separato per ogni applicazione EAR, l'inizializzazione della molla dà errore.No JTA UserTransaction disponibili - specificare 'UserTransaction' o 'userTransactionName'
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'
Perché l'inizializzazione della primavera non è successo?
Grazie
Quale impostazione è stata modificata in JBoss? – skaffman
Ho modificato il file ear-deployer-jboss-beans.xml nella directory "deployers" per impostare la proprietà "isolated" su true. – Chir