Tag Archives: Encache

Spring-Encache 문제 Another unnamed CacheManager already exists in the same VM

스프링4.x와 jpa, encache를 설정해서 사용. 멀티모듈프로젝트로 포팅하면서 문제가 발생했다.

JavaConfig.java를 복붙하는 과정에서 오류가 있었나 해서 여기저기 찾아봤는데 역시 없었고 빈 생성타임을 의심하고 찾아서 문제점을 발견했다.

component-scan이 JavaConfig.java 설정파일을 두번 읽으면서 빈을 두번생성하고~ 캐시가 두번 생성되면서 발생하는 문제…

servlet에서 스캔을 없애버리거나… servlet이 담당하는 부분만을 스캔하게 만든다. Controller, 또는 Service까지…

root에서는 기타 등등 의존성을 미리 생성해야 하니 이쪽에서 대부분의 스캔을 맡겨놓는다.설정은 다음과 같다.

문제상황

root-context.xml
<context:component-scan base-package="org.beansugar">

servlet-context.xml
<context:component-scan base-package="org.beansugar">

 

해결방법

root-context.xml

<context:component-scan base-package="org.beansugar">
<context:exclude-filter type="annotation" expression="org.springframework.stereotype.Controller"/>
</context:component-scan>

servlet-context.xml
<context:component-scan base-package="org.beansugar" use-default-filters="false">
<context:include-filter type="annotation" expression="org.springframework.stereotype.Controller"/>
</context:component-scan>