Originally posted by Mark Spritzler:
If your domain objects are deployed in the AS and there is a JTA Transaction in progress, then when you call session.beginTransaction() it will join the JTA transaction automatically for you, nothing to do or see here. If there is not a JTA Transaction in progress when you call session.beginTransaction(), then Hibernate creates its own internal transaction.
Basically, it is hidden from you so you don't have to worry about it.
Mark
Hibernate uses
JDBC Transaction when you don't specify hibernate.transaction.factory_class property.
For Hibernate to participate in JTA, you'll need to update hibernate.transaction.factory_class and hibernate.transaction.manager_lookup_class to the appropriate values.