为了对功能进行简单的测试(在教程之后),我尝试使用Bitronix和H2内存数据库建立一个原始的JTA环境。在简单的Java应用程序(没有Java、没有服务器等)中,测试应该以单元测试的形式运行。
不幸的是,我无法运行它,这是我的设置:
- btm, h2, hibernate-entitymanager and hibernate-jpa-2.0-api
这是我的persistence.xml配置:
<persistence-unit name="org.persistence.jpa" transaction-type="JTA">
<provider>org.hibernate.ejb.HibernatePersistence</provider>
<jta-data-source>jdbc/BitronixJTADataSource</jta-data-source>
<class>org.drools.persistence.info.SessionInfo</class>
<class>org.drools.persistence.info.WorkItemInfo</class>
<properties>
<property name="hibernate.dialect" value="org.hibernate.dialect.H2Dialect" />
<property name="hibernate.max_fetch_depth" value="3" />
<property name="hibernate.hbm2ddl.auto" value="update" />
<property name="hibernate.show_sql" value="true" />
<property name="hibernate.jndi.class" value="bitronix.tm.jndi.BitronixInitialContextFactory"/>
<property name="hibernate.transaction.manager_lookup_class"
value="org.hibernate.transaction.BTMTransactionManagerLookup" />
</properties>
</persistence-unit>和java.naming.factory.initial=bitronix.tm.jndi.BitronixInitialContextFactory :jndi.properties
问题是:我得到了这个堆栈:
javax.persistence.PersistenceException: [PersistenceUnit: org.drools.persistence.jpa] Unable to build EntityManagerFactory
[...]
Caused by: org.hibernate.service.jndi.JndiException: Error parsing JNDI name [jdbc/BitronixJTADataSource]
[...]
Caused by: javax.naming.OperationNotSupportedException
[...]所以这里肯定出了点问题。你能帮帮我吗?
发布于 2013-09-30 13:04:18
我可以通过使用Hibernate 3.x而不是4.x ->来解决这个问题,但我没有做进一步的调查。
发布于 2013-10-04 19:33:13
“我可以通过使用Hibernate 3.x而不是4.x ->来解决这个问题,但我没有做进一步的调查。”
您所说的“可以”是指“我认为”,还是指您让它与Hibernate 3.x一起工作?
https://stackoverflow.com/questions/19093482
复制相似问题