我在resources.groovy中定义了1个bean
cachedbean(serviceImpl) {
}
在服务中我这样使用它
MyService{
static transactional = false
def cachedbean
myMeth(){
cachedbean.get("cacheKey")
}
}
这很好用,但是当我尝试使用集成测试对其进行测试时,我会在&{39; nullpointer
'上获得get
例外。
cachedbean get
(" cacheKey&#34)。
它是如何运作的?
答案 0 :(得分:0)
如果让Grails自动将服务bean连接到集成测试类,而不是“新” - 启动服务实例,它应该是自动连接的。
class MyServiceTests extends GroovyTestCase {
def myService
void testSomething () {
// myService should already be wired up
}
}
答案 1 :(得分:-1)
目前还不清楚你是否根据你的示例代码做了,但是你需要在resources.groovy
中完全限定“serviceImpl”的包和类名,除非你明确导入包。
您可能需要在resources.groovy
行bean.autowire = "byName"