24

I am migrating our code to Spring 3.2 version (from 3.1.3) and I've got an issue with Spring Cache Abstraction.

We use EhCache implementation of CacheManager and its configuration is quite simple:

<cache:annotation-driven />

<bean id="cacheManager" class="org.springframework.cache.ehcache.EhCacheCacheManager" p:cache-manager-ref="ehcache" />
<bean id="ehcache" class="org.springframework.cache.ehcache.EhCacheManagerFactoryBean" p:config-location="classpath:ehcache.xml" />

My problem is that I am missing EhCacheCacheManager class and corresponding factory bean in spring-context jar. I suppose they moved implementation to some other module, but I can't find where exactly.

Roman C
  • 49,761
  • 33
  • 66
  • 176
hoaz
  • 9,883
  • 4
  • 42
  • 53

3 Answers3

56

According to Appendix C. Migrating to Spring Framework 3.2,

"the EHCache support classes in the org.springframework.cache.ehcache package moved from the spring-context module to spring-context-support".

Swapnil
  • 8,201
  • 4
  • 38
  • 57
12

Updating the Maven pom.xml file worked for me.

Properties:

    <org.springframework-version>3.2.3.RELEASE</org.springframework-version>

Dependencies

    <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-context-support</artifactId>
        <version>${org.springframework-version}</version>
    </dependency>
chris
  • 121
  • 1
  • 3
9

Using oss.sonatype.org, you can search for a class by name and find in which artifacts it's contained, when they are indexed: https://oss.sonatype.org/index.html#nexus-search;classname~EhCacheCacheManager.

As SwapnilS has answered, it's in spring-context-support.

Frank Pavageau
  • 11,477
  • 1
  • 43
  • 53