2

我使用扩展 unitils 用其中一个数据集初始化我的数据库。使用 Mysql、HsqlDB 和 PostgreSql,我没有任何问题,但使用 H2 我发现了问题。有人已经用unitils测试过H2吗?如果是这样,感谢您提供 unitils.properties 的内容。

在我的配置之下

database.driverClassName=org.h2.Driver
database.url=jdbc:h2:tcp://localhost/~/test
database.dialect=h2
database.userName=sa
database.password=
database.schemaNames=public

DatabaseModule.Transactional.value.default=disabled

updateDataBaseSchema.enabled=true

dbMaintainer.disableConstraints.enabled=false

dbMaintainer.fromScratch.enabled=true

org.unitils.dbmaintainer.script.ScriptSource.implClassName= org.unitils.dbmaintainer.script.impl.DefaultScriptSource

dbMaintainer.script.locations=./target/test-classes/database/scripts

dataSetStructureGenerator.xsd.dirName=src/test/resources/database/xsd

dbMaintainer.autoCreateExecutedScriptsTable=true

dbMaintainer.script.fileExtensions=sql,ddl

org.unitils.dbmaintainer.clean.DBCleaner.implClassName= org.unitils.dbmaintainer.clean.impl.DefaultDBCleaner

这是我得到的例外

org.unitils.dbmaintainer.DBMaintainer - Error while initializing DbMaintainer
org.unitils.core.UnitilsException: Missing configuration for org.unitils.core.dbsupport.DbSupport.implClassName

我使用了 unitils-dbunit 3.3

4

1 回答 1

3

我找到了解决方案并返回以分享它。最新版本的 unitils 不支持 H2 数据库,因此需要实现必要的支持。我在这个 jira 中找到了解决方案: https ://unitils.atlassian.net/browse/UNI-79

于 2013-12-04T10:55:47.503 回答