Tomcat 6を使用したプロジェクトで使用しようとしています。使用EhCache
している EhCache は、Hibernate を使用したプロジェクトで既に使用されているため、バージョン 1.4 です。私は独自のカスタム CacheEventListener (以下に含まれています) を作成しましたが、1 つの問題を除いて動作しnotifyElementExpired()
ます。notifyElementExpired()
キャッシュに何か他のものを追加したときにのみ呼び出されるようです。ちなみに、notifyElementPut()
大丈夫と呼ばれています。
誰かがこれに対する解決策を提案できますか?
public class EhCacheEventListener implements CacheEventListener {
private Logger log4j =
LoggerFactory.getLogger(this.getClass().getPackage().getName());
public void notifyElementRemoved(Ehcache cache, Element element) throws CacheException {
log4j.debug("cache element removed---->"+element.getKey());
}
public void notifyElementPut(Ehcache cache, Element element) throws CacheException {
log4j.debug("cache element put---->"+element.getKey());
}
public void notifyElementUpdated(Ehcache cache, Element element) throws CacheException {
log4j.debug("cache element updated---->"+element.getKey());
}
@Override
public void notifyElementExpired(Ehcache cache, Element element) {
//log4j.debug("Element creation time is "+element.getCreationTime());
log4j.debug("cache element expired---->"+element.getKey());
//log4j.debug("Element expiry time is "+element.getExpirationTime());
}
@Override
public void notifyElementEvicted(Ehcache cache, Element element) {
log4j.debug("cache element evicted---->"+element.getKey());
}
public void notifyRemoveAll(Ehcache cache) {}
public void dispose() {}
public Object clone(){
throw new UnsupportedOperationException("Not supported yet.");
}
}