1
我在曼宁阅读EJB 3,第二版中间时遇到运行源测试中的IntelliJ如何与Hibernate
测试一个艰难的时间与运行的Arquillian IN_CONTAINER模式测试是: 全部源代码,可以发现here:
@RunWith(Arquillian.class)
@Run(RunModeType.IN_CONTAINER)
....
.....
@Deployment
public static Archive<?> createDeployment() {
return ShrinkWrap.create(JavaArchive.class, "foo.jar").addClasses(OrderProcessor.class,
OrderProcessorBean.class,
ItemService.class,
ItemServiceBean.class, Bid.class, Bidder.class, Item.class).addManifestResource("test-persistence.xml", ArchivePaths.create("persistence.xml"));
}
的persistence.xml是:
<?xml version="1.0" encoding="UTF-8"?>
<persistence version="1.0"
xmlns="http://java.sun.com/xml/ns/persistence"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="
http://java.sun.com/xml/ns/persistence
http://java.sun.com/xml/ns/persistence/persistence_1_0.xsd">
<persistence-unit name="users" transaction-type="JTA">
<provider>org.hibernate.ejb.HibernatePersistence</provider>
<jta-data-source>jdbc/chapter2</jta-data-source>
<properties>
<property name="hibernate.hbm2ddl.auto" value="create-drop" />
<property name="hibernate.dialect" value="org.hibernate.dialect.DerbyDialect" />
</properties>
</persistence-unit>
</persistence>
错误,同时运行测试:
WARNING: Could not obtain connection to query metadata
java.sql.SQLException: Error in allocating a connection. Cause: Connection could not be allocated because: java.net.ConnectException : Error connecting to server localhost on port 1527 with message Connection refused.
at com.sun.gjc.spi.base.DataSource.getConnection(DataSource.java:112)
at org.hibernate.ejb.connection.InjectedDataSourceConnectionProvider.getConnection(InjectedDataSourceConnectionProvider.java:71)
UPDATE
domain.xml中位于here:
从它看起来像一个数据库连接不能建立的错误。但是,我不确定为什么它无法连接到内存德比数据库。由于domain.xml具有create=true
属性,所以应该简单地创建数据库。
谢谢,这清除了事情。但是我仍然无法看到'domain.xml',即使添加了命名空间,我也会得到相同的错误。 – Omnipresent