Si consiglia di utilizzare il supporto per le transazioni JTA nell'ambiente Java EE.Come utilizzare il supporto JTA in Tomcat 6 per Hibernate?
Ma come configurare JTA in Tomcat6 in modo che Hibernate Session possa usarlo?
A partire dalla versione 3.0.1, Hibernate ha aggiunto il metodo SessionFactory.getCurrentSession(). Inizialmente, questo presupponeva l'utilizzo di transazioni JTA, in cui la transazione JTA definiva sia l'ambito che il contesto di una sessione corrente. Data la maturità delle numerose implementazioni di TransactionManager JTA standalone, la maggior parte, se non tutte, le applicazioni dovrebbero utilizzare la gestione delle transazioni JTA, indipendentemente dal fatto che siano implementate o meno in un contenitore J2EE. Sulla base di ciò, le sessioni contestuali basate su JTA sono tutto ciò che devi usare.
hai davvero bisogno di JTA? – Bozho
Ok, ho bisogno di una SessionFactory configurata con JNDI. Ora, quando sono in grado di ottenere una SessionFactory tramite la ricerca, devo configurare JTA. Le mie classi home utilizzano getCurrentSession() e, come posso leggere nella documentazione, funziona solo in ambiente configurato JTA. Inoltre, come ho già detto, praticamente tutti raccomandano l'uso di JTA nell'ambiente JEE. – EugeneP
Non utilizzare JTA solo perché qualcuno ti ha detto che ne hai bisogno. JTA è molto complessa e non necessaria nel 99% delle situazioni. Hibernate/JPA funzionerà perfettamente senza di esso. – skaffman