2009-02-24 3 views
2

Я пытаюсь использовать декларативное кэширование из проекта Spring Modules.Кэширование Spring-modules не работает ... тихо

Не работает ie. ничего, похоже, не кэшируется.

Вот моя конфигурация:

<bean id="cacheManager" 
    class="org.springframework.cache.ehcache.EhCacheManagerFactoryBean"> 
</bean> 

<bean id="cacheProviderFacade" 
    class="org.springmodules.cache.provider.ehcache.EhCacheFacade"> 
    <property name="cacheManager" ref="cacheManager" /> 
</bean> 

<bean id="cacheableService" 
    class="org.springmodules.cache.interceptor.proxy.CacheProxyFactoryBean"> 
    <property name="cacheProviderFacade" ref="cacheProviderFacade" /> 
    <property name="cachingModels"> 
     <props> 
      <prop key="get*">cacheName=default</prop> 
     </props> 
    </property> 
    <property name="flushingModels"> 
     <props> 
      <prop key="update*">cacheNames=default</prop> 
     </props> 
    </property> 
    <property name="target" ref="myServiceBean" /> 
</bean> 

А потом, вот каротаж с момента, когда Spring загружает контекст приложения ...

24 Feb 2009 14:26:20,785 INFO org.springframework.cache.ehcache.EhCacheManagerFactoryBean - Initializing EHCache CacheManager 
24 Feb 2009 14:26:20,801 DEBUG net.sf.ehcache.CacheManager - Configuring ehcache from classpath. 
24 Feb 2009 14:26:20,801 WARN net.sf.ehcache.config.ConfigurationFactory - No configuration found. Configuring ehcache from ehcache-failsafe.xml found in the classpath: zip:C:/bea/weblogic81/server/bin/myserver/.wlnotdelete/extract/myserver_threeoneoneonline_threeoneoneonline/jarfiles/WEB-INF/lib/ehcache-1.3.0.jar!/ehcache-failsafe.xml 
24 Feb 2009 14:26:20,801 DEBUG net.sf.ehcache.config.ConfigurationFactory - Configuring ehcache from URL: zip:C:/bea/weblogic81/server/bin/myserver/.wlnotdelete/extract/myserver_threeoneoneonline_threeoneoneonline/jarfiles/WEB-INF/lib/ehcache-1.3.0.jar!/ehcache-failsafe.xml 
24 Feb 2009 14:26:20,801 DEBUG net.sf.ehcache.config.ConfigurationFactory - Configuring ehcache from InputStream 
24 Feb 2009 14:26:20,816 DEBUG net.sf.ehcache.config.DiskStoreConfiguration - Disk Store Path: C:\DOCUME~1\bpapa\LOCALS~1\Temp\ 
24 Feb 2009 14:26:20,832 DEBUG net.sf.ehcache.config.ConfigurationHelper - No CacheManagerEventListenerFactory class specified. Skipping... 
24 Feb 2009 14:26:20,832 DEBUG net.sf.ehcache.config.ConfigurationHelper - No CachePeerListenerFactoryConfiguration specified. Not configuring a CacheManagerPeerListener. 
24 Feb 2009 14:26:20,847 DEBUG net.sf.ehcache.config.ConfigurationHelper - No CachePeerProviderFactoryConfiguration specified. Not configuring a CacheManagerPeerProvider. 
24 Feb 2009 14:26:20,863 DEBUG net.sf.ehcache.config.ConfigurationHelper - No BootstrapCacheLoaderFactory class specified. Skipping... 

После этого я попал на страницу, которая вызывает метод с префиксом «получить» из компонента «myServiceBean». Но ничего не регистрируется, что происходит любое кеширование. Я начал вести журнал до конца, чтобы отлаживать весенние модули, весенний кеш-пакет и DEBUG ... поскольку примеры Spring Modules довольно мало и далеко друг от друга в Интернете, мне было интересно, видел ли кто-нибудь это раньше ...

ответ

2

Вы должны создать файл ehcache.xml для своего конфига, так как я не считаю, что кэш с безопасностью работает с декларативным кэшированием. Мы настроили наше кеширование с помощью схемы XML XML-схем ehcache Spring и аннотаций. Если использование явного ehcache.xml не решит вашу проблему, я могу выкопать код, который делает это (близко) к вашему пути.

+0

спасибо, я постараюсь, что и после обновления ... – bpapa

+0

как насчет bpapa обновлений? благодаря! – Dan

+0

Я никогда не пробовал, извините! Раньше перешел к другому проекту. – bpapa

1

Я один из авторов нового проекта, предназначенных для обеспечения интеграции Ehcache для Spring 3 проекта с помощью аннотаций:

http://code.google.com/p/ehcache-spring-annotations/

Библиотека предоставляет два аннотаций методы уровня в духе Спринг @Transactional :

@Cacheable @TriggersRemove

при соответствующей конфигурации в вашем Spring приложения, этот проект позволит создать кэширование аспекты во время выполнения ваших аннотированных методов @Cacheable.

документация Использование можно найти на вики проекта

Смежные вопросы