Java db4o-DatabaseClosedException
我试图通过arquillian测试用例存储一个具有db4o的实体,并得到一个DatabaseClosedException:Java db4o-DatabaseClosedException,java,db4o,jboss-arquillian,Java,Db4o,Jboss Arquillian,我试图通过arquillian测试用例存储一个具有db4o的实体,并得到一个DatabaseClosedException: 测试集:com.walterjwhite.address.api.datastore.TestAddressDatastore 测试运行:1,失败:0,错误:1,跳过:0,所用时间:2.149秒过去发生在我身上时,在引发此异常之前,较早的错误已关闭数据库。我的建议是在抛出此错误之前查找其他错误。您是否看到在tmp中创建的文件test.db4o? 确保您写入数据库的目录存
测试集:com.walterjwhite.address.api.datastore.TestAddressDatastore
测试运行:1,失败:0,错误:1,跳过:0,所用时间:2.149秒过去发生在我身上时,在引发此异常之前,较早的错误已关闭数据库。我的建议是在抛出此错误之前查找其他错误。您是否看到在tmp中创建的文件test.db4o?
确保您写入数据库的目录存在,并且尝试创建数据库的进程可以访问该目录。我找到了它。。。我没有在我的bean上指定正确的作用域。。。我编写了一个没有Weld/CDI的简单测试应用程序,效果很好。ObjectServer几乎在打开后立即关闭 在我将其更改为适当的作用域(服务器的单例)之后,它就工作了
Walter是的,我指出文件已创建且大于0字节。好的,可以。可能是在构建过程中在工厂中抛出了一个异常,我没有记录它,因此不知道它。
@Produces
protected ObjectServer openServer(ApplicationContext applicationContext)
{
return (Db4oClientServer.openServer("/tmp/test.db4o", 0));
}
@Produces
public ObjectContainer getObjectContainer(ObjectServer objectServer)
{
return (objectServer.openClient());
}