0
임베디드 Tomee를 사용하여 Arquillian을 사용하여 지속성을 유지하면서 세션 빈을 테스트하려고합니다. 그러나 Tomee는 기본 HSQLDB 데이터 소스에 연결하려고합니다.내장형 Tomee에서 Arquillian을 사용하여 테스트 : HSQL 데이터 소스를 제거하는 방법?
AFAIK, Tomee에게 HSEEDB 데이터 소스가 주석 처리되는 tomee.xml을 사용하도록 지시해야합니다.
arquillian.xml을 사용하여 어떻게 할 수 있습니까? 아니면 다른 방법이 있습니까?
내 배포 방법 :
@Deployment
public static WebArchive createTestArchive() {
MavenResolverSystem resolver = Maven.resolver();
File[] files = resolver.loadPomFromFile("pom.xml").importRuntimeDependencies().resolve().withTransitivity().asFile();
for (File f : files) {
System.out.println(f.getPath());
}
return ShrinkWrap.create(WebArchive.class)
.addClasses(MyBean.class)
.addAsManifestResource(EmptyAsset.INSTANCE, "beans.xml")
.addAsManifestResource("persistence.xml", "persistence.xml")
.addAsLibraries(files);
}
내의 persistence.xml :
<persistence-unit name="oracle">
<provider>org.hibernate.ejb.HibernatePersistence</provider>
<properties>
<property name="hibernate.archive.autodetection" value="class" />
<property name="hibernate.dialect"
value="org.hibernate.dialect.OracleDialect"/>
<property name="hibernate.connection.driver_class" value="oracle.jdbc.driver.OracleDriver" />
<property name="hibernate.connection.url" value="jdbc:oracle:thin:@localhost:1521:ORADB" />
<property name="hibernate.connection.username" value="gk2" />
<property name="hibernate.connection.password" value="qwerty" />
<!-- <property name="hibernate.show_sql" value="true"/> -->
<property name="hibernate.flushMode" value="FLUSH_AUTO" />
<property name="hibernate.hbm2ddl.auto" value="validate" />
</properties>
</persistence-unit>
내 arquillian.xml : 나는 문제를 발견
<container qualifier="tomee" default="true">
<configuration>
<property name="httpPort">-1</property>
<property name="stopPort">-1</property>
<!--Optional Container Properties -->
<property name="properties">
</property>
</configuration>
</container>