我有一个运行GORM
独立的应用程序(即没有Grails
)。一切正常,但它使用GORM3
,我想将其移植到GORM5
。
在Spock
规范中,我初始化GORM
以连接到DB
并传递一些自定义属性,最重要的属性是 hibernate.cache.use_second_level_cache
在GORM3
中,它是这样的:
def init = new HibernateDatastoreSpringInitializer(ClassLoader.systemClassLoader, "my.pkg")
def prop = new Properties()
prop.setProperty('hibernate.cache.use_second_level_cache', 'false')
init.setConfiguration(prop)
init.configureForDataSource(dataSource)
在GORM5中,AbstractDatastoreInitializer.configuration的类型不是Properties而是PropertyResolver。
我试过这样的事情:
def entities = getEntities()
def props = ['hibernate.cache.use_second_level_cache': 'false']
def init = new HibernateDatastoreSpringInitializer(props, entities)
init.configureForDataSource(dataSource)
但是该属性未被拾取并且hibernate抱怨二级缓存被禁用但没有提供工厂。
我试着用其他许多方法没有运气。我错过了什么?
答案 0 :(得分:0)
这是GORM中的一个错误,它将在5.0.5中修复 https://github.com/grails/grails-data-mapping/issues/698