Hi, It seems that classloader takes other Neethi jar anyway. I would firstly look for Neethi class (AssertionBuilderFactory.class) to determine where it really loaded and ask WAS forums how to avoid that.
Regards, Andrei. > -----Original Message----- > From: ganeshatmail [mailto:[email protected]] > Sent: Samstag, 11. Januar 2014 19:58 > To: [email protected] > Subject: Help needed: java.lang.IncompatibleClassChangeError: > org.apache.neethi.AssertionBuilderFactory > > Hi, > > I am using spring 3 jars, cxf-2.5.9 jar & neethi-3.0.2 jar in our app. WAS > 7 is the app server. > Following is the class loader policy set in the server.xml, which loads > PARENT_LAST. > > <components xmi:type="applicationserver:ApplicationServer" > xmi:id="ApplicationServer_1386837293322" name="xxxx" id="-1" > applicationClassLoaderPolicy="SINGLE" > applicationClassLoadingMode="PARENT_LAST"> > > The deployment.xml also set to PARENT_LAST. > > <classloader xmi:id="Classloader_1389283672103" mode="PARENT_LAST"/> > > But when I try to publish the ear in the server, I am getting class > incompatible > error as shown below: > > org.springframework.beans.factory.BeanCreationException: Error creating > bean with name > 'org.springframework.web.servlet.mvc.method.annotation.RequestMappin > gHandlerMapping#0': > Initialization of bean failed; nested exception is > org.springframework.beans.factory.BeanCreationException: Error creating > bean with name 'org.apache.cxf.binding.soap.SoapBindingFactory' defined in > class path resource [META-INF/cxf/cxf-extension-soap.xml]: Cannot resolve > reference to bean 'cxf' while setting constructor argument; nested exception > is org.springframework.beans.factory.BeanCreationException: Error creating > bean with name 'cxf' defined in class path resource [META-INF/cxf/cxf.xml]: > Instantiation of bean failed; nested exception is > org.springframework.beans.BeanInstantiationException: Could not > instantiate bean class [org.apache.cxf.bus.spring.SpringBus]: Constructor > threw exception; nested exception is > java.lang.IncompatibleClassChangeError: > org.apache.neethi.AssertionBuilderFactory > at > org.springframework.beans.factory.support.AbstractAutowireCapableBeanF > actory.doCreateBean(AbstractAutowireCapableBeanFactory.java:530) > at > org.springframework.beans.factory.support.AbstractAutowireCapableBeanF > actory.createBean(AbstractAutowireCapableBeanFactory.java:459) > at > org.springframework.beans.factory.support.AbstractBeanFactory$1.getObje > ct(AbstractBeanFactory.java:294) > at > org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.g > etSingleton(DefaultSingletonBeanRegistry.java:225) > at > org.springframework.beans.factory.support.AbstractBeanFactory.doGetBea > n(AbstractBeanFactory.java:291) > at > org.springframework.beans.factory.support.AbstractBeanFactory.getBean(A > bstractBeanFactory.java:193) > at > org.springframework.beans.factory.support.DefaultListableBeanFactory.preI > nstantiateSingletons(DefaultListableBeanFactory.java:585) > at > org.springframework.context.support.AbstractApplicationContext.finishBea > nFactoryInitialization(AbstractApplicationContext.java:913) > at > org.springframework.context.support.AbstractApplicationContext.refresh(A > bstractApplicationContext.java:464) > at > org.springframework.web.context.ContextLoader.configureAndRefreshWeb > ApplicationContext(ContextLoader.java:381) > at > org.springframework.web.context.ContextLoader.initWebApplicationContex > t(ContextLoader.java:283) > at > org.springframework.web.context.ContextLoaderListener.contextInitialized( > ContextLoaderListener.java:111) > at > com.ibm.ws.webcontainer.webapp.WebApp.notifyServletContextCreated( > WebApp.java:1718) > at > com.ibm.ws.webcontainer.webapp.WebApp.commonInitializationFinish(We > bApp.java:385) > at > com.ibm.ws.webcontainer.webapp.WebAppImpl.initialize(WebAppImpl.java > :299) > at > com.ibm.ws.webcontainer.webapp.WebGroupImpl.addWebApplication(We > bGroupImpl.java:100) > at > com.ibm.ws.webcontainer.VirtualHostImpl.addWebApplication(VirtualHostI > mpl.java:166) > at > com.ibm.ws.webcontainer.WSWebContainer.addWebApp(WSWebContaine > r.java:732) > at > com.ibm.ws.webcontainer.WSWebContainer.addWebApplication(WSWebCo > ntainer.java:617) > at > com.ibm.ws.webcontainer.component.WebContainerImpl.install(WebContai > nerImpl.java:376) > at > com.ibm.ws.webcontainer.component.WebContainerImpl.start(WebContai > nerImpl.java:668) > at > com.ibm.ws.runtime.component.ApplicationMgrImpl.start(ApplicationMgrI > mpl.java:1128) > at > com.ibm.ws.runtime.component.DeployedApplicationImpl.fireDeployedObj > ectStart(DeployedApplicationImpl.java:1319) > at > com.ibm.ws.runtime.component.DeployedModuleImpl.start(DeployedMod > uleImpl.java:611) > at > com.ibm.ws.runtime.component.DeployedApplicationImpl.start(DeployedA > pplicationImpl.java:944) > at > com.ibm.ws.runtime.component.ApplicationMgrImpl.startApplication(Applic > ationMgrImpl.java:741) > at > com.ibm.ws.runtime.component.ApplicationMgrImpl$1.run(ApplicationMgrI > mpl.java:1273) > at > com.ibm.ws.security.auth.ContextManagerImpl.runAs(ContextManagerImpl > .java:5395) > at > com.ibm.ws.security.auth.ContextManagerImpl.runAsSystem(ContextMana > gerImpl.java:5483) > at > com.ibm.ws.security.core.SecurityContext.runAsSystem(SecurityContext.jav > a:255) > at > com.ibm.ws.runtime.component.ApplicationMgrImpl.startApplicationDynam > ically(ApplicationMgrImpl.java:1278) > at > com.ibm.ws.runtime.component.ApplicationMgrImpl.start(ApplicationMgrI > mpl.java:2050) > at > com.ibm.ws.runtime.component.CompositionUnitMgrImpl.start(Compositio > nUnitMgrImpl.java:389) > at > com.ibm.ws.runtime.component.CompositionUnitImpl.start(CompositionUn > itImpl.java:123) > at > com.ibm.ws.runtime.component.CompositionUnitMgrImpl.start(Compositio > nUnitMgrImpl.java:332) > at > com.ibm.ws.runtime.component.CompositionUnitMgrImpl.startComposition > Unit(CompositionUnitMgrImpl.java:603) > at > com.ibm.ws.runtime.component.CompositionUnitMgrImpl.startComposition > Unit(CompositionUnitMgrImpl.java:565) > at > com.ibm.ws.runtime.component.ApplicationMgrImpl.startApplication(Applic > ationMgrImpl.java:1185) > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > at > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.j > ava:48) > at > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces > sorImpl.java:25) > at java.lang.reflect.Method.invoke(Method.java:600) > at sun.reflect.misc.Trampoline.invoke(MethodUtil.java:57) > at sun.reflect.GeneratedMethodAccessor36.invoke(Unknown Source) > at > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces > sorImpl.java:25) > at java.lang.reflect.Method.invoke(Method.java:600) > at sun.reflect.misc.MethodUtil.invoke(MethodUtil.java:260) > at > javax.management.modelmbean.RequiredModelMBean$4.run(RequiredMo > delMBean.java:1137) > at > java.security.AccessController.doPrivileged(AccessController.java:250) > at > com.ibm.oti.security.CheckedAccessControlContext.securityCheck(Checked > AccessControlContext.java:30) > at > sun.misc.JavaSecurityAccessWrapper.doIntersectionPrivilege(JavaSecurityAc > cessWrapper.java:29) > at > javax.management.modelmbean.RequiredModelMBean.invokeMethod(Re > quiredModelMBean.java:1131) > at > javax.management.modelmbean.RequiredModelMBean.invoke(RequiredM > odelMBean.java:984) > at > com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultM > BeanServerInterceptor.java:836) > at > com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.java: > 762) > at > com.ibm.ws.management.AdminServiceImpl$1.run(AdminServiceImpl.java:1 > 331) > at > com.ibm.ws.security.util.AccessController.doPrivileged(AccessController.jav > a:118) > at > com.ibm.ws.management.AdminServiceImpl.invoke(AdminServiceImpl.java: > 1224) > at > com.ibm.ws.management.connector.AdminServiceDelegator.invoke(Admin > ServiceDelegator.java:181) > at > com.ibm.ws.management.connector.ipc.CallRouter.route(CallRouter.java:24 > 2) > at > com.ibm.ws.management.connector.ipc.IPCConnectorInboundLink.doWork( > IPCConnectorInboundLink.java:353) > at > com.ibm.ws.management.connector.ipc.IPCConnectorInboundLink$IPCConn > ectorReadCallback.complete(IPCConnectorInboundLink.java:595) > at > com.ibm.ws.ssl.channel.impl.SSLReadServiceContext$SSLReadCompletedCall > back.complete(SSLReadServiceContext.java:1784) > at > com.ibm.ws.tcp.channel.impl.AioReadCompletionListener.futureCompleted( > AioReadCompletionListener.java:175) > at > com.ibm.io.async.AbstractAsyncFuture.invokeCallback(AbstractAsyncFuture. > java:217) > at > com.ibm.io.async.AsyncChannelFuture.fireCompletionActions(AsyncChannel > Future.java:161) > at com.ibm.io.async.AsyncFuture.completed(AsyncFuture.java:138) > at com.ibm.io.async.ResultHandler.complete(ResultHandler.java:204) > at > com.ibm.io.async.ResultHandler.runEventProcessingLoop(ResultHandler.jav > a:775) > at com.ibm.io.async.ResultHandler$2.run(ResultHandler.java:905) > at com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java:1656) > Caused by: org.springframework.beans.factory.BeanCreationException: > Error creating bean with name > 'org.apache.cxf.binding.soap.SoapBindingFactory' > defined in class path resource [META-INF/cxf/cxf-extension-soap.xml]: > Cannot resolve reference to bean 'cxf' while setting constructor argument; > nested exception is > org.springframework.beans.factory.BeanCreationException: Error creating > bean with name 'cxf' defined in class path resource > [META-INF/cxf/cxf.xml]: Instantiation of bean failed; nested exception is > org.springframework.beans.BeanInstantiationException: Could not > instantiate bean class [org.apache.cxf.bus.spring.SpringBus]: Constructor > threw exception; nested exception is > java.lang.IncompatibleClassChangeError: > org.apache.neethi.AssertionBuilderFactory > at > org.springframework.beans.factory.support.BeanDefinitionValueResolver.re > solveReference(BeanDefinitionValueResolver.java:328) > at > org.springframework.beans.factory.support.BeanDefinitionValueResolver.re > solveValueIfNecessary(BeanDefinitionValueResolver.java:106) > at > org.springframework.beans.factory.support.ConstructorResolver.resolveCo > nstructorArguments(ConstructorResolver.java:630) > at > org.springframework.beans.factory.support.ConstructorResolver.autowireC > onstructor(ConstructorResolver.java:148) > at > org.springframework.beans.factory.support.AbstractAutowireCapableBeanF > actory.autowireConstructor(AbstractAutowireCapableBeanFactory.java:1028 > ) > at > org.springframework.beans.factory.support.AbstractAutowireCapableBeanF > actory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:932) > at > org.springframework.beans.factory.support.AbstractAutowireCapableBeanF > actory.getSingletonFactoryBeanForTypeCheck(AbstractAutowireCapableBea > nFactory.java:760) > at > org.springframework.beans.factory.support.AbstractAutowireCapableBeanF > actory.getTypeForFactoryBean(AbstractAutowireCapableBeanFactory.java:6 > 91) > at > org.springframework.beans.factory.support.AbstractBeanFactory.isTypeMat > ch(AbstractBeanFactory.java:519) > at > org.springframework.beans.factory.support.DefaultListableBeanFactory.get > BeanNamesForType(DefaultListableBeanFactory.java:319) > at > org.springframework.beans.factory.support.DefaultListableBeanFactory.get > BeanNamesForType(DefaultListableBeanFactory.java:298) > at > org.springframework.context.support.AbstractApplicationContext.getBeanN > amesForType(AbstractApplicationContext.java:1150) > at > org.springframework.web.servlet.handler.AbstractHandlerMethodMapping. > initHandlerMethods(AbstractHandlerMethodMapping.java:85) > at > org.springframework.web.servlet.handler.AbstractHandlerMethodMapping. > initApplicationContext(AbstractHandlerMethodMapping.java:72) > at > org.springframework.context.support.ApplicationObjectSupport.initApplicati > onContext(ApplicationObjectSupport.java:119) > at > org.springframework.web.context.support.WebApplicationObjectSupport.in > itApplicationContext(WebApplicationObjectSupport.java:72) > at > org.springframework.context.support.ApplicationObjectSupport.setApplicati > onContext(ApplicationObjectSupport.java:73) > at > org.springframework.context.support.ApplicationContextAwareProcessor.in > vokeAwareInterfaces(ApplicationContextAwareProcessor.java:117) > at > org.springframework.context.support.ApplicationContextAwareProcessor.p > ostProcessBeforeInitialization(ApplicationContextAwareProcessor.java:92) > at > org.springframework.beans.factory.support.AbstractAutowireCapableBeanF > actory.applyBeanPostProcessorsBeforeInitialization(AbstractAutowireCapabl > eBeanFactory.java:397) > at > org.springframework.beans.factory.support.AbstractAutowireCapableBeanF > actory.initializeBean(AbstractAutowireCapableBeanFactory.java:1438) > at > org.springframework.beans.factory.support.AbstractAutowireCapableBeanF > actory.doCreateBean(AbstractAutowireCapableBeanFactory.java:522) > ... 70 more > Caused by: org.springframework.beans.factory.BeanCreationException: > Error creating bean with name 'cxf' defined in class path resource > [META-INF/cxf/cxf.xml]: Instantiation of bean failed; nested exception is > org.springframework.beans.BeanInstantiationException: Could not > instantiate bean class [org.apache.cxf.bus.spring.SpringBus]: Constructor > threw exception; nested exception is > java.lang.IncompatibleClassChangeError: > org.apache.neethi.AssertionBuilderFactory > at > org.springframework.beans.factory.support.AbstractAutowireCapableBeanF > actory.instantiateBean(AbstractAutowireCapableBeanFactory.java:990) > at > org.springframework.beans.factory.support.AbstractAutowireCapableBeanF > actory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:936) > at > org.springframework.beans.factory.support.AbstractAutowireCapableBeanF > actory.doCreateBean(AbstractAutowireCapableBeanFactory.java:488) > at > org.springframework.beans.factory.support.AbstractAutowireCapableBeanF > actory.createBean(AbstractAutowireCapableBeanFactory.java:459) > at > org.springframework.beans.factory.support.AbstractBeanFactory$1.getObje > ct(AbstractBeanFactory.java:294) > at > org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.g > etSingleton(DefaultSingletonBeanRegistry.java:225) > at > org.springframework.beans.factory.support.AbstractBeanFactory.doGetBea > n(AbstractBeanFactory.java:291) > at > org.springframework.beans.factory.support.AbstractBeanFactory.getBean(A > bstractBeanFactory.java:193) > at > org.springframework.beans.factory.support.BeanDefinitionValueResolver.re > solveReference(BeanDefinitionValueResolver.java:322) > ... 91 more > Caused by: org.springframework.beans.BeanInstantiationException: Could > not instantiate bean class [org.apache.cxf.bus.spring.SpringBus]: Constructor > threw exception; nested exception is > java.lang.IncompatibleClassChangeError: > org.apache.neethi.AssertionBuilderFactory > at > org.springframework.beans.BeanUtils.instantiateClass(BeanUtils.java:162) > at > org.springframework.beans.factory.support.SimpleInstantiationStrategy.inst > antiate(SimpleInstantiationStrategy.java:76) > at > org.springframework.beans.factory.support.AbstractAutowireCapableBeanF > actory.instantiateBean(AbstractAutowireCapableBeanFactory.java:983) > ... 99 more > Caused by: java.lang.IncompatibleClassChangeError: > org.apache.neethi.AssertionBuilderFactory > at java.lang.ClassLoader.defineClassImpl(Native Method) > at java.lang.ClassLoader.defineClass(ClassLoader.java:275) > at > java.security.SecureClassLoader.defineClass(SecureClassLoader.java:74) > at > com.ibm.ws.classloader.CompoundClassLoader._defineClass(CompoundClas > sLoader.java:775) > at > com.ibm.ws.classloader.CompoundClassLoader.localFindClass(CompoundCla > ssLoader.java:690) > at > com.ibm.ws.classloader.CompoundClassLoader.loadClass(CompoundClassLo > ader.java:513) > at java.lang.ClassLoader.loadClass(ClassLoader.java:626) > at java.lang.ClassLoader.defineClassImpl(Native Method) > at java.lang.ClassLoader.defineClass(ClassLoader.java:275) > at > java.security.SecureClassLoader.defineClass(SecureClassLoader.java:74) > at > com.ibm.ws.classloader.CompoundClassLoader._defineClass(CompoundClas > sLoader.java:775) > at > com.ibm.ws.classloader.CompoundClassLoader.localFindClass(CompoundCla > ssLoader.java:690) > at > com.ibm.ws.classloader.CompoundClassLoader.loadClass(CompoundClassLo > ader.java:513) > at java.lang.ClassLoader.loadClass(ClassLoader.java:626) > at > org.apache.cxf.bus.extension.Extension.getClassObject(Extension.java:155) > at > org.apache.cxf.bus.extension.ExtensionManagerImpl.activateAllByType(Ext > ensionManagerImpl.java:137) > at > org.apache.cxf.bus.extension.ExtensionManagerBus.<init>(ExtensionManag > erBus.java:131) > at > org.apache.cxf.bus.extension.ExtensionManagerBus.<init>(ExtensionManag > erBus.java:143) > at org.apache.cxf.bus.spring.SpringBus.<init>(SpringBus.java:52) > at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native > Method) > at > sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructor > AccessorImpl.java:44) > at > sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingCon > structorAccessorImpl.java:27) > at java.lang.reflect.Constructor.newInstance(Constructor.java:516) > at > org.springframework.beans.BeanUtils.instantiateClass(BeanUtils.java:147) > ... 101 more > > > > Any help would be highly appreciated. > > > Thanks > > > > > -- > View this message in context: http://cxf.547215.n5.nabble.com/Help- > needed-java-lang-IncompatibleClassChangeError-org-apache-neethi- > AssertionBuilderFactory-tp5738473.html > Sent from the cxf-user mailing list archive at Nabble.com.
