Я обновляю приложение из 3.2.6-RELEASE до 4.0.5-RELEASE. Я обновил все зависимости Maven и приложение строится.SingleConnectionFactory - класс не найден Весна 4.0.5
Однако, когда я запускаю его, я получаю следующий стек.
Apr 23, 2015 2:30:31 PM org.apache.catalina.core.StandardContext listenerStart
SEVERE: Exception sending context initialized event to listener instance of class com.spring.framework.ContextLoaderListener
java.lang.NoClassDefFoundError: org/springframework/jms/connection/SingleConnectionFactory102
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:169)
at com.spring.chaining.handler.interceptor.ChainingHandlerInterceptor.postProcessBeanFactory(ChainingHandlerInterceptor.java:100)
at org.springframework.context.support.PostProcessorRegistrationDelegate.invokeBeanFactoryPostProcessors(PostProcessorRegistrationDelegate.java:265)
at org.springframework.context.support.PostProcessorRegistrationDelegate.invokeBeanFactoryPostProcessors(PostProcessorRegistrationDelegate.java:177)
at org.springframework.context.support.AbstractApplicationContext.invokeBeanFactoryPostProcessors(AbstractApplicationContext.java:609)
at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:464)
at org.springframework.web.context.ContextLoader.configureAndRefreshWebApplicationContext(ContextLoader.java:403)
at org.springframework.web.context.ContextLoader.initWebApplicationContext(ContextLoader.java:306)
at org.springframework.web.context.ContextLoaderListener.contextInitialized(ContextLoaderListener.java:106)
at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4779)
at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5273)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1568)
at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1558)
at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
at java.util.concurrent.FutureTask.run(FutureTask.java:138)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
at java.lang.Thread.run(Thread.java:662)
Caused by: java.lang.ClassNotFoundException: org.springframework.jms.connection.SingleConnectionFactory102
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1701)
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1546)
... 20 more
Тот же код отлично работает в 3.2.6-RELEASE. Есть идеи?
Edit: SingleConnection кажется, определяется уже в прикладном context.xml
<bean id="jmsConnectionFactory" class="org.springframework.jms.connection.SingleConnectionFactory">
<constructor-arg ref="connectionFactory"/>
</bean>
Вы действительно прочитали трассировку стека? В нем говорится, что 'SingleConnectionFactory102' не найден, а не' SingleConnectionFactory'. Совсем другой класс и поддержка JMS 1.0.2 были отброшены. –
Cheers. Я не могу найти этот класс, который используется в приложении. Я буду рыть. Использует ли Apache CXF это, когда я разговаривал с коллегой, который сказал, что может это сделать (в настоящее время он использует версию 2.7.11, но планируя обновление до версии 3.0.4). –
. Я исследовал еще немного. Кажется, это CXF. Я попытался обновить до 3.0.4, но получаю ошибки с зависимостями Spring 3.2.6. Я смог обновить до 2.7.15, что похоже на то же самое. Кажется, отсюда вызывается SingleConnectionFactory102. –