linux - spring-security-core 2.0.3 spring-aop 2.0.8 cause NoSuchMethodError -


using maven build project under windows works fine, when deploy linux servers via bamboo, on 2 servers seems ok on third server nosuchmethoderror regarding 1 of spring libs. İf remowe spring-aop:jar war works. İf because of different spring versions how works on other 2 linux servers?

has come across problem before, or have advice on how can debug error further?

any appreciated.

library tree

[info] --- maven-dependency-plugin:2.8:tree (default-cli) @ pqis-op --- [info] com.toyotatr.tmem.pqis:pqis-op:war:0.0.1.7-snapshot [info] +- com.toyotatr.tmem.pqis:pqis-service:jar:0.0.1-snapshot:compile [info] |  +- com.toyota.tme.jpa:jpa-support:jar:1.1tk:compile [info] |  +- org.hibernate:hibernate-annotations:jar:3.4.0.ga:compile [info] |  |  +- org.hibernate:ejb3-persistence:jar:1.0.2.ga:compile [info] |  |  +- org.hibernate:hibernate-commons-     annotations:jar:3.1.0.ga:compile [info] |  |  +- org.hibernate:hibernate-core:jar:3.3.0.sp1:compile [info] |  |  |  \- antlr:antlr:jar:2.7.6:compile [info] |  |  \- dom4j:dom4j:jar:1.6.1:compile [info] |  |     \- xml-apis:xml-apis:jar:1.0.b2:compile [info] |  +- org.hibernate:hibernate-entitymanager:jar:3.4.0.ga:compile [info] |  |  +- javax.transaction:jta:jar:1.1:compile [info] |  |  \- javassist:javassist:jar:3.4.ga:compile [info] |  +- aspectj:aspectjrt:jar:1.5.3:compile [info] |  +- aspectj:aspectjweaver:jar:1.5.3:compile [info] |  +- cglib:cglib:jar:2.2:compile [info] |  |  \- asm:asm:jar:3.1:compile [info] |  +- javax.activation:activation:jar:1.1:compile [info] |  +- javax.mail:mail:jar:1.4.2:compile [info] |  \- net.sf.ehcache:ehcache:jar:1.5.0:compile [info] |     +- backport-util-concurrent:backport-util-concurrent:jar:3.1:compile [info] |     \- net.sf.jsr107cache:jsr107cache:jar:1.0:compile [info] +- org.slf4j:slf4j-api:jar:1.5.6:compile [info] +- org.slf4j:slf4j-log4j12:jar:1.5.6:compile [info] +- log4j:log4j:jar:1.2.14:compile [info] +- org.springframework:spring:jar:2.5.6:compile [info] |  \- commons-logging:commons-logging:jar:1.1.1:compile [info] +- org.springframework:spring-context:jar:2.5.6:compile [info] |  +- aopalliance:aopalliance:jar:1.0:compile [info] |  \- org.springframework:spring-beans:jar:2.5.6:compile [info] +- org.springframework:spring-core:jar:2.5.6:compile [info] +- javax.annotation:jsr250-api:jar:1.0:compile [info] +- org.springframework:spring-test:jar:2.5.6:test [info] +- org.springframework:spring-webmvc:jar:2.5.6:compile [info] |  +- org.springframework:spring-context-support:jar:2.5.6:compile [info] |  \- org.springframework:spring-web:jar:2.5.6:compile [info] +- javax.servlet:servlet-api:jar:2.5:compile [info] +- javax.servlet:jstl:jar:1.1.0:compile [info] +- javax.servlet:jsp-api:jar:2.0:compile [info] +- taglibs:standard:jar:1.1.0:compile [info] +- opensymphony:sitemesh:jar:2.4.2:compile [info] +- org.springframework.security:spring-security-core-tiger:jar:2.0.3:compile [info] |  \- org.springframework.security:spring-security-core:jar:2.0.3:compile [info] |     +- org.springframework:spring-aop:jar:2.0.8:compile [info] |     +- org.springframework:spring-support:jar:2.0.8:runtime [info] |     \- commons-codec:commons-codec:jar:1.3:compile [info] +- org.springframework.security:spring-security-taglibs:jar:2.0.3:compile [info] |  \- org.springframework.security:spring-security-acl:jar:2.0.3:compile [info] |     \- org.springframework:spring-jdbc:jar:2.0.8:compile [info] |        \- org.springframework:spring-dao:jar:2.0.8:compile [info] +- org.json:json:jar:20140107:compile [info] +- displaytag:displaytag:jar:1.2:compile [info] |  +- commons-collections:commons-collections:jar:3.1:compile [info] |  +- commons-lang:commons-lang:jar:2.3:compile [info] |  +- commons-beanutils:commons-beanutils:jar:1.7.0:compile [info] |  \- org.slf4j:jcl104-over-slf4j:jar:1.4.2:compile [info] +- com.lowagie:itext:jar:2.1.7:compile [info] |  +- bouncycastle:bcmail-jdk14:jar:138:compile [info] |  +- bouncycastle:bcprov-jdk14:jar:138:compile [info] |  \- org.bouncycastle:bctsp-jdk14:jar:1.38:compile [info] |     +- org.bouncycastle:bcprov-jdk14:jar:1.38:compile [info] |     \- org.bouncycastle:bcmail-jdk14:jar:1.38:compile [info] +- junit:junit:jar:4.10:compile [info] |  \- org.hamcrest:hamcrest-core:jar:1.1:compile [info] \- c3p0:c3p0:jar:0.9.1:compile [info] 

error

[07-05-2015 15:41:27:928] error org.springframework.web.context.contextloader.initwebapplicationcontext() - context initialization failed org.springframework.beans.factory.beandefinitionstoreexception: unexpected exception parsing xml document class path resource [applicationcontext-main.xml]; nested exception java.lang.nosuchmethoderror: org.springframework.aop.config.aopnamespaceutils.registerautoproxycreatorifnecessary(lorg/springframework/beans/factory/xml/parsercontext;lorg/w3c/dom/element;)v     @ org.springframework.beans.factory.xml.xmlbeandefinitionreader.doloadbeandefinitions(xmlbeandefinitionreader.java:420)     @ org.springframework.beans.factory.xml.xmlbeandefinitionreader.loadbeandefinitions(xmlbeandefinitionreader.java:342)     @ org.springframework.beans.factory.xml.xmlbeandefinitionreader.loadbeandefinitions(xmlbeandefinitionreader.java:310)     @ org.springframework.beans.factory.support.abstractbeandefinitionreader.loadbeandefinitions(abstractbeandefinitionreader.java:143)     @ org.springframework.beans.factory.support.abstractbeandefinitionreader.loadbeandefinitions(abstractbeandefinitionreader.java:178)     @ org.springframework.beans.factory.support.abstractbeandefinitionreader.loadbeandefinitions(abstractbeandefinitionreader.java:149)     @ org.springframework.web.context.support.xmlwebapplicationcontext.loadbeandefinitions(xmlwebapplicationcontext.java:124)     @ org.springframework.web.context.support.xmlwebapplicationcontext.loadbeandefinitions(xmlwebapplicationcontext.java:92)     @ org.springframework.context.support.abstractrefreshableapplicationcontext.refreshbeanfactory(abstractrefreshableapplicationcontext.java:123)     @ org.springframework.context.support.abstractapplicationcontext.obtainfreshbeanfactory(abstractapplicationcontext.java:422)     @ org.springframework.context.support.abstractapplicationcontext.refresh(abstractapplicationcontext.java:352)     @ org.springframework.web.context.contextloader.createwebapplicationcontext(contextloader.java:255)     @ org.springframework.web.context.contextloader.initwebapplicationcontext(contextloader.java:199)     @ org.springframework.web.context.contextloaderlistener.contextinitialized(contextloaderlistener.java:45)     @ org.eclipse.jetty.server.handler.contexthandler.callcontextinitialized(contexthandler.java:788)     @ org.eclipse.jetty.servlet.servletcontexthandler.callcontextinitialized(servletcontexthandler.java:434)     @ org.eclipse.jetty.server.handler.contexthandler.startcontext(contexthandler.java:780)     @ org.eclipse.jetty.servlet.servletcontexthandler.startcontext(servletcontexthandler.java:284)     @ org.eclipse.jetty.webapp.webappcontext.startcontext(webappcontext.java:1322)     @ org.eclipse.jetty.server.handler.contexthandler.dostart(contexthandler.java:732)     @ org.eclipse.jetty.webapp.webappcontext.dostart(webappcontext.java:490)     @ org.eclipse.jetty.util.component.abstractlifecycle.start(abstractlifecycle.java:69)     @ org.eclipse.jetty.util.component.containerlifecycle.start(containerlifecycle.java:118)     @ org.eclipse.jetty.util.component.containerlifecycle.addbean(containerlifecycle.java:282)     @ org.eclipse.jetty.util.component.containerlifecycle.addbean(containerlifecycle.java:214)     @ org.eclipse.jetty.util.component.containerlifecycle.updatebeans(containerlifecycle.java:764)     @ org.eclipse.jetty.server.handler.handlercollection.sethandlers(handlercollection.java:89)     @ org.eclipse.jetty.server.handler.contexthandlercollection.sethandlers(contexthandlercollection.java:145)     @ org.eclipse.jetty.server.handler.handlercollection.addhandler(handlercollection.java:155)     @ org.eclipse.jetty.deploy.bindings.standarddeployer.processbinding(standarddeployer.java:41)     @ org.eclipse.jetty.deploy.applifecycle.runbindings(applifecycle.java:186)     @ org.eclipse.jetty.deploy.deploymentmanager.requestappgoal(deploymentmanager.java:495)     @ org.eclipse.jetty.deploy.deploymentmanager.addapp(deploymentmanager.java:146)     @ org.eclipse.jetty.deploy.providers.scanningappprovider.fileadded(scanningappprovider.java:175)     @ org.eclipse.jetty.deploy.providers.scanningappprovider$1.fileadded(scanningappprovider.java:64)     @ org.eclipse.jetty.util.scanner.reportaddition(scanner.java:605)     @ org.eclipse.jetty.util.scanner.reportdifferences(scanner.java:528)     @ org.eclipse.jetty.util.scanner.scan(scanner.java:391)     @ org.eclipse.jetty.util.scanner.dostart(scanner.java:313)     @ org.eclipse.jetty.util.component.abstractlifecycle.start(abstractlifecycle.java:69)     @ org.eclipse.jetty.deploy.providers.scanningappprovider.dostart(scanningappprovider.java:145)     @ org.eclipse.jetty.util.component.abstractlifecycle.start(abstractlifecycle.java:69)     @ org.eclipse.jetty.deploy.deploymentmanager.startappprovider(deploymentmanager.java:557)     @ org.eclipse.jetty.deploy.deploymentmanager.dostart(deploymentmanager.java:232)     @ org.eclipse.jetty.util.component.abstractlifecycle.start(abstractlifecycle.java:69)     @ org.eclipse.jetty.util.component.containerlifecycle.start(containerlifecycle.java:118)     @ org.eclipse.jetty.server.server.start(server.java:342)     @ org.eclipse.jetty.util.component.containerlifecycle.dostart(containerlifecycle.java:100)     @ org.eclipse.jetty.server.handler.abstracthandler.dostart(abstracthandler.java:60)     @ org.eclipse.jetty.server.server.dostart(server.java:290)     @ org.eclipse.jetty.util.component.abstractlifecycle.start(abstractlifecycle.java:69)     @ org.eclipse.jetty.xml.xmlconfiguration$1.run(xmlconfiguration.java:1250)     @ java.security.accesscontroller.doprivileged(native method)     @ org.eclipse.jetty.xml.xmlconfiguration.main(xmlconfiguration.java:1174) caused by: java.lang.nosuchmethoderror: org.springframework.aop.config.aopnamespaceutils.registerautoproxycreatorifnecessary(lorg/springframework/beans/factory/xml/parsercontext;lorg/w3c/dom/element;)v     @ org.springframework.transaction.config.annotationdrivenbeandefinitionparser$aopautoproxyconfigurer.configureautoproxycreator(annotationdrivenbeandefinitionparser.java:109)     @ org.springframework.transaction.config.annotationdrivenbeandefinitionparser.parse(annotationdrivenbeandefinitionparser.java:80)     @ org.springframework.beans.factory.xml.namespacehandlersupport.parse(namespacehandlersupport.java:69)     @ org.springframework.beans.factory.xml.beandefinitionparserdelegate.parsecustomelement(beandefinitionparserdelegate.java:1297)     @ org.springframework.beans.factory.xml.beandefinitionparserdelegate.parsecustomelement(beandefinitionparserdelegate.java:1287)     @ org.springframework.beans.factory.xml.defaultbeandefinitiondocumentreader.parsebeandefinitions(defaultbeandefinitiondocumentreader.java:135)     @ org.springframework.beans.factory.xml.defaultbeandefinitiondocumentreader.registerbeandefinitions(defaultbeandefinitiondocumentreader.java:92)     @ org.springframework.beans.factory.xml.xmlbeandefinitionreader.registerbeandefinitions(xmlbeandefinitionreader.java:507)     @ org.springframework.beans.factory.xml.xmlbeandefinitionreader.doloadbeandefinitions(xmlbeandefinitionreader.java:398)     ... 53 more 

i had problem 1 described in past. weird behaviour possible because order of class loading isn't guaranteed. so, it's possible same war file works on 1 server , fails on one.

the easy way debug problem using ide eclipse or intellij , search aopnamespaceutilsclass. if find 2 or more occurrences of class, you're able find jars contain class , remove jars (the jars wrong version of class) war file.

if aren't able find ide, can enable classloader debug log , check differences between servers work/not work. (as didn't mention servlet container/application server you're using, can't point guide that, easy find using google).


Comments