2016-07-01 23 views
0

Spring 3.1.2からSpring 4.1.2に移行しようとしています 移行後、Tomcatを実行すると例外が発生しました この問題は、 jms依存関係 私の知る限り、このクラス "MappingJacksonMessageConverter"は春3のみ、春4はMappingJackson MessageConverterです。 私はこのクラスMappingJacksonMessageConverterを読み込んでいるスプリングコードの部分がわかりません。Spring 3.1.2からSpring 4への移行の問題

java.lang.NoClassDefFoundError: org/springframework/jms/support/converter/MappingJacksonMessageConverter 
    at java.lang.ClassLoader.defineClass1(Native Method) 
    at java.lang.ClassLoader.defineClass(ClassLoader.java:760) 
    at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142) 
    at org.apache.catalina.loader.WebappClassLoaderBase.findClassInternal(WebappClassLoaderBase.java:3116) 
    at org.apache.catalina.loader.WebappClassLoaderBase.findClass(WebappClassLoaderBase.java:1344) 
    at org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1825) 
    at org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1705) 
    at org.springframework.core.type.classreading.AnnotationReadingVisitorUtils.convertClassValues(AnnotationReadingVisitorUtils.java:73) 
    at org.springframework.core.type.classreading.AnnotationMetadataReadingVisitor.getAnnotationAttributes(AnnotationMetadataReadingVisitor.java:134) 
    at org.springframework.core.type.classreading.AnnotationMetadataReadingVisitor.getAnnotationAttributes(AnnotationMetadataReadingVisitor.java:49) 
    at org.springframework.context.annotation.AnnotationConfigUtils.attributesFor(AnnotationConfigUtils.java:280) 
    at org.springframework.context.annotation.AnnotationConfigUtils.attributesFor(AnnotationConfigUtils.java:276) 
    at org.springframework.context.annotation.ConfigurationClassParser.doProcessConfigurationClass(ConfigurationClassParser.java:263) 
    at org.springframework.context.annotation.ConfigurationClassParser.processConfigurationClass(ConfigurationClassParser.java:231) 
    at org.springframework.context.annotation.ConfigurationClassParser.processImports(ConfigurationClassParser.java:509) 
    at org.springframework.context.annotation.ConfigurationClassParser.doProcessConfigurationClass(ConfigurationClassParser.java:277) 
    at org.springframework.context.annotation.ConfigurationClassParser.processConfigurationClass(ConfigurationClassParser.java:231) 
    at org.springframework.context.annotation.ConfigurationClassParser.parse(ConfigurationClassParser.java:190) 
    at org.springframework.context.annotation.ConfigurationClassParser.parse(ConfigurationClassParser.java:173) 
    at org.springframework.context.annotation.ConfigurationClassPostProcessor.processConfigBeanDefinitions(ConfigurationClassPostProcessor.java:321) 
    at org.springframework.context.annotation.ConfigurationClassPostProcessor.postProcessBeanDefinitionRegistry(ConfigurationClassPostProcessor.java:243) 
    at org.springframework.context.support.PostProcessorRegistrationDelegate.invokeBeanDefinitionRegistryPostProcessors(PostProcessorRegistrationDelegate.java:273) 
    at org.springframework.context.support.PostProcessorRegistrationDelegate.invokeBeanFactoryPostProcessors(PostProcessorRegistrationDelegate.java:98) 
    at org.springframework.context.support.AbstractApplicationContext.invokeBeanFactoryPostProcessors(AbstractApplicationContext.java:674) 
    at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:519) 
    at com.walmart.platform.config.PlatformContextLoaderListener.configureAndRefreshWebApplicationContext(PlatformContextLoaderListener.java:64) 
    at org.springframework.web.context.ContextLoader.initWebApplicationContext(ContextLoader.java:328) 
    at org.springframework.web.context.ContextLoaderListener.contextInitialized(ContextLoaderListener.java:107) 
    at com.walmart.platform.config.PlatformContextLoaderListener.contextInitialized(PlatformContextLoaderListener.java:74) 
    at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:5077) 
    at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5591) 
    at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150) 
    at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1574) 
    at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1564) 
    at java.util.concurrent.FutureTask.run(FutureTask.java:266) 
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) 
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) 
    at java.lang.Thread.run(Thread.java:745) 
Caused by: java.lang.ClassNotFoundException: org.springframework.jms.support.converter.MappingJacksonMessageConverter 
    at org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1856) 
    at org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1705) 
    ... 38 more 
+0

「スプリングコードのどの部分にこのコードがロードされているのかわかりません」 - どうすればわかるのですか? "com.walmart.platform.config.PlatformContextLoaderListener"でアプリケーションコンテキストの検索を開始します。 – Stefan

答えて

0

次のmavenコマンドを使用することをお勧めします。

mvn dependecy:tree 

すべてのプロジェクトの依存関係が表示されます。どの依存関係が間違ったバージョンのJMSをもたらし、それを除外/変更するかを調べることができます。

0

いくつかの依存性のバージョンが間違っているかもしれません。おそらく移行されていない可能性があります。したがって、Spring 4.1.2の依存性テーブルをmaven centralに表示する必要があります。あなたは欲しい。

関連する問題