I have attached a (stupidly simple) test project which demonstrates that in Hibernate 5.0.6 you cannot even new a Configuration object without a JTA library. This means that people who want to use JDBC transactions now have to include JTA to do anything at all - which they didn't in 5.0.3. It makes the JDBC transaction functionality a bit pointless in some ways. The problem seems to be lines 21 & 22 in CoreMessageLogger:
import javax.transaction.Synchronization;
import javax.transaction.SystemException;
Could the messages that use these classes be moved out to one of the transaction packages, or could the JTA objects passed in to them be wrapped in such a way that JTA isn't a direct dependency? |