Hibernate 在使用hyperjaxb进行往返测试期间忽略数据源
我正在使用Hyperjaxb 3和maven从xsd生成java类。为了指定AS中使用的数据源,我使用插件配置(pom.xml)中的persistenceXml设置配置了一个自定义persistence.xml模板Hibernate 在使用hyperjaxb进行往返测试期间忽略数据源,hibernate,jpa-2.0,hyperjaxb,Hibernate,Jpa 2.0,Hyperjaxb,我正在使用Hyperjaxb 3和maven从xsd生成java类。为了指定AS中使用的数据源,我使用插件配置(pom.xml)中的persistenceXml设置配置了一个自定义persistence.xml模板 jpa2 src/main/etc/persistence.xml 以下是模板: <?xml version="1.0" encoding="UTF-8" standalone="yes"?> <persistence version="2.0">
jpa2
src/main/etc/persistence.xml
以下是模板:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<persistence version="2.0">
<persistence-unit name="##generated">
<jta-data-source>java:jboss/datasources/ExampleDS</jta-data-source>
<properties>
<property name="hibernate.hbm2ddl.auto" value="update" />
</properties>
</persistence-unit>
</persistence>
java:jboss/datasources/examples
由于使用maven运行测试时没有数据源,因此往返测试失败。有没有办法忽略
jta数据源
选项并返回persistence.properties,或者在src/test/resources
中生成另一个persistence.xml 是的,正如您所注意到的,使用非容器管理的数据源进行测试是有意义的。您可以在/src/test/resources下定义一个单独的定义(或使用属性文件),在运行测试时,该定义应优先于src/main/resources上的定义
这与我试图实现的目标非常接近。我删除了persistence.xml模板,并为测试和标准环境添加了hibernate.properties。这对我来说是可行的,但也有不允许使用标准jpa2连接属性的缺点。
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<persistence version="2.0">
<persistence-unit name="##generated">
<jta-data-source>java:jboss/datasources/ExampleDS</jta-data-source>
<properties>
<property name="hibernate.hbm2ddl.auto" value="update" />
</properties>
</persistence-unit>
</persistence>