Терракота 4,3 - баночные конфликты
Я пытаюсь настроить терракоту 4.3 с моим приложением. Я сделал все необходимые изменения, но когда я запускаю свой сервер Tomcat, я получаю сообщение об ошибке ниже (выделено жирным шрифтом). Может кто-нибудь предложить, как мне решить эту проблему. Обратите внимание, что я не могу исключить jaxrs-api.jar, так как он необходим для внешних вызовов покоя.
SEVERE: Исключительная ситуация при отправке события, инициализированного контекстом, в экземпляр прослушивателя класса org.springframework.web.context.ContextLoaderListener org.springframework.beans.factory.BeanCreationException: Ошибка создания бина с именем "pendingAccountCacheManager", определенного в URL [file:/C: dev/apache-tomcat-7.0.16_1/webapps/account/WEB-INF/classes/context/account-cacheloader.xml]: сбой вызова метода init; Вложенное исключение - net.sf.ehcache.CacheException: Не удалось создать экземпляр ManagementServer. на org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1486) в org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:524) в org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:461) в org.springframework.beans.factory.support. DefaultSingletonBeanRegistry.java:223) в org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:292) в org.springframework.beans.factory.support.Abstract.BeganBeanBean.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:608) в org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:932) в org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext. Java:389) в org.springframework.web.context.ContextLoader.initWebApplicationContext(ContextLoader.java:294) в org.springframework.web.context.ContextLoaderListener.contextInitialized(ContextLoavaglite.cat)..StandardContext.listenerStart(StandardContext.java:4723) в org.apache.catalina.core.StandardContext$1.call(StandardContext.java:5226) в org.apache.catalina.core.StandardContext $ 1.call (StandardContext.java: StandardContext.java) в java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334) в java.util.concurrent.FutureTask.run(FutureTask.java:166) в java.util.concurrent.ThreadPoolExecutor.run java:1110) в java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603) в java.lang.Thread.run(Thread.java:722). Причина: net.sf.ehcache.CacheException: Ошибка создать экземпляр ManagementServer. в net.sf.ehcache.management.ManagementServerLoader.register(ManagementServerLoader.java:140) в net.sf.ehcache.CacheManager.initializeManagementService(CacheManager.java:553) в net.sf.ehcache.CacheManManager.:516) по адресу net.sf.ehcache.CacheManager.init(CacheManager.java:395) по адресу net.sf.ehcache.CacheManager.(CacheManager.java:356) по адресу org.springframework.cache.ehcache.EhCacheManagerFactoryBan.java:138) в org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1545) в org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1483) ... Еще 20 Вызвано: java.lang.reflect.InvocationTargetException at sun.reflect.NativeMethodAccessorImpl.invoke0(собственный метод) в sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.javaref). ssorImpl.invoke(DelegatingMethodAccessorImpl.java:43) по адресу java.lang.reflect.Method.invoke(Method.java:601) по адресу net.sf.ehcache.management.ManagementServerLoader$ManagementServerHolder.start(ManagementSerava: 2): aterver: 2.sf.ehcache.management.ManagementServerLoader.register(ManagementServerLoader.java:125) ... еще 27 Вызвано: java.lang.LinkageError: ClassCastException: попытка выполнить castjar:file:/C:/dev/apache-tomcat-7.0.16_1/webapps/pendingaccount/WEB-INF/lib/jaxrs-api-3.0.9.Final.jar!/Javax/ws/rs/client/ClientBuilder.class для jar: файл:/C:/dev/apache-tomcat-7.0.16_1/webapps/pendingaccount/WEB-INF/lib/ehcache-ee-2.10.0.0.26.jar!/rest-management-private-classpath/javax/ws/rs/client/ClientBuilder.class_terracotta at javax.ws.rs.client.ClientBuilder.newBuilder(ClientBuilder.java! iceLocator(ManagementServerImplEE.java:132) в net.sf.ehcache.management.ManagementServerImplEE.initialize(ManagementServerImplEE.java:71) в net.sf.ehcache.management.ManagementServerImplEE.initialize: 33...erver Больше
1 ответ
Чтобы решить эту проблему, я добавил ehcache-ee-2.10.0.0.26.jar и другие терракотовые банки в одобренную папку tomcat. Это помогло решить проблему конфликтующих банок.