问题描述
在没有任何.xml配置的配置java类中创建transaction-type "JTA"
时可以设置EntityManagerFactory
吗?
解决方法
您可以尝试以这种方式覆盖javax.persistence.transactionType
属性:
Map configOverrides = new HashMap();
configOverrides.put("javax.persistence.transactionType","JTA");
EntityManagerFactory emf = Persistence.createEntityManagerFactory("yourPersistenceUnitName",configOverrides);
但是,如果您的类路径中缺少PersistenceException
文件,似乎会引发META-INF/persistence.xml
异常。
请参见documentation( 2.2.2。自举部分)。