2014-02-10 2 views
0

Grails (2.1.5)의 '저장소'객체에서 메소드 호출을 캐시하려고 할 때 이상한 문제가 발생했습니다. 이 저장소는 src/groovy에있는 그루브 한 객체로 두 개의 데이터 소스의 데이터를 결합하고 'Seller'객체를 반환합니다.@Cacheable 캐싱하지 않는 Grails POGO 메소드

def aDatabaseHelper 
def bDatabaseHelper 

@Cacheable('seller_do_get') 
public Seller get(id){ 
    .... 
    //do stuff with aDatabaseHelper and bDatabaseHelper 
    return seller 
} 

은 SellerRepository가 설치 및 기타 목적/방법에 대한 제대로 작동 resources.groovy

aDatabaseHelper (ADatabaseHelper){ 
    aDataSource = ref("dataSource_a") 
} 
... 

sellerRepository(SellerRepository){ 
    aDatabaseHelper = aDatabaseHelper 
    bDatabaseHelper = bDatabaseHelper 
} 

에 정의되어 있습니다 그리고 우리는 ehcahce 플러그인 (1.0.0)을 가지고있다.

위의 이유는 캐시하지 않기 때문에 매회 get 메소드 내부로 들어갑니다. 나는 같은 의존성을 가지며 getBla (id) 메소드를 가지고 있고 잘 캐시되고있는 'BlaRepository'를 만들었다.

누군가 여기에 무슨 일이 일어나는지 실마리가 있습니까? 내가 어리석은 실수를 저지르고 있니?

답변

0

작동해야하지만 버그 일 수 있습니다. 문제를 보여주는 작은 테스트 애플리케이션을 만들고 grails bug-report을 실행하고 JIRA에 http://jira.grails.org/browse/GPCACHEEHCACHE을 첨부하면됩니다.

관련 문제