-
15. ClassLoader Deploy Error Conflicting JARS JOSS AS6
andyhting May 23, 2011 4:44 PM (in response to surtax)I have the similiar error. I have tried all the above solutions. However, it won't work for me. Can anybody help me pelase? The following is my error Message:
16:45:43,644 WARN [ClassLoaderManager] Unexpected error during load of:org.w3c.
dom.DOMImplementation: java.lang.LinkageError: loader constraint violation: load
er (instance of org/jboss/classloader/spi/base/BaseClassLoader) previously initi
ated loading for a different type with name "org/w3c/dom/DOMImplementation"
at java.lang.ClassLoader.defineClass1(Native Method) [:1.6.0_24]
at java.lang.ClassLoader.defineClassCond(ClassLoader.java:632) [:1.6.0_2
4]
at java.lang.ClassLoader.defineClass(ClassLoader.java:616) [:1.6.0_24]
at org.jboss.classloader.spi.base.BaseClassLoader.access$200(BaseClassLo
ader.java:52) [jboss-classloader.jar:2.2.0.GA]
at org.jboss.classloader.spi.base.BaseClassLoader$2.run(BaseClassLoader.
java:650) [jboss-classloader.jar:2.2.0.GA]
at org.jboss.classloader.spi.base.BaseClassLoader$2.run(BaseClassLoader.
java:609) [jboss-classloader.jar:2.2.0.GA]
at java.security.AccessController.doPrivileged(Native Method) [:1.6.0_24
]
at org.jboss.classloader.spi.base.BaseClassLoader.loadClassLocally(BaseC
lassLoader.java:608) [jboss-classloader.jar:2.2.0.GA]
at org.jboss.classloader.spi.base.BaseClassLoader.loadClassLocally(BaseC
lassLoader.java:585) [jboss-classloader.jar:2.2.0.GA]
at org.jboss.classloader.spi.base.BaseDelegateLoader.loadClass(BaseDeleg
ateLoader.java:156) [jboss-classloader.jar:2.2.0.GA]
at org.jboss.classloader.spi.filter.FilteredDelegateLoader.doLoadClass(F
ilteredDelegateLoader.java:141) [jboss-classloader.jar:2.2.0.GA]
at org.jboss.classloader.spi.filter.FilteredDelegateLoader.loadClass(Fil
teredDelegateLoader.java:132) [jboss-classloader.jar:2.2.0.GA]
at org.jboss.classloader.spi.base.ClassLoadingTask$ThreadTask.run(ClassL
oadingTask.java:461) [jboss-classloader.jar:2.2.0.GA]
at org.jboss.classloader.spi.base.ClassLoaderManager.nextTask(ClassLoade
rManager.java:262) [jboss-classloader.jar:2.2.0.GA]
at org.jboss.classloader.spi.base.ClassLoaderManager.process(ClassLoader
Manager.java:161) [jboss-classloader.jar:2.2.0.GA]
at org.jboss.classloader.spi.base.BaseClassLoaderDomain.loadClass(BaseCl
assLoaderDomain.java:260) [jboss-classloader.jar:2.2.0.GA]
at org.jboss.classloader.spi.base.BaseClassLoaderDomain.loadClass(BaseCl
assLoaderDomain.java:1152) [jboss-classloader.jar:2.2.0.GA]
at org.jboss.classloader.spi.base.BaseClassLoader.loadClassFromDomain(Ba
seClassLoader.java:886) [jboss-classloader.jar:2.2.0.GA]
at org.jboss.classloader.spi.base.BaseClassLoader.doLoadClass(BaseClassL
oader.java:505) [jboss-classloader.jar:2.2.0.GA]
at org.jboss.classloader.spi.base.BaseClassLoader.loadClass(BaseClassLoa
der.java:450) [jboss-classloader.jar:2.2.0.GA]
at java.lang.ClassLoader.loadClass(ClassLoader.java:248) [:1.6.0_24]
at java.lang.Class.getDeclaredMethods0(Native Method) [:1.6.0_24]
at java.lang.Class.privateGetDeclaredMethods(Class.java:2427) [:1.6.0_24
]
at java.lang.Class.getDeclaredMethods(Class.java:1791) [:1.6.0_24]
at org.jboss.reflect.plugins.introspection.IntrospectionTypeInfoFactoryI
mpl.getDeclaredMethods(IntrospectionTypeInfoFactoryImpl.java:593) [jboss-reflect
.jar:2.2.0.GA]
at org.jboss.reflect.plugins.introspection.IntrospectionTypeInfoFactoryI
mpl$2.run(IntrospectionTypeInfoFactoryImpl.java:222) [jboss-reflect.jar:2.2.0.GA
]
at org.jboss.reflect.plugins.introspection.IntrospectionTypeInfoFactoryI
mpl$2.run(IntrospectionTypeInfoFactoryImpl.java:218) [jboss-reflect.jar:2.2.0.GA
]
at java.security.AccessController.doPrivileged(Native Method) [:1.6.0_24
]
at org.jboss.reflect.plugins.introspection.IntrospectionTypeInfoFactoryI
mpl.getMethods(IntrospectionTypeInfoFactoryImpl.java:217) [jboss-reflect.jar:2.2
.0.GA]
at org.jboss.reflect.plugins.ClassInfoImpl.getDeclaredMethods(ClassInfoI
mpl.java:416) [jboss-reflect.jar:2.2.0.GA]
at org.jboss.scanning.plugins.visitor.ClassHierarchyResourceVisitor.hand
leClass(ClassHierarchyResourceVisitor.java:80) [:1.0.0.GA]
at org.jboss.scanning.plugins.visitor.ReflectResourceVisitor.doVisit(Ref
lectResourceVisitor.java:108) [:1.0.0.GA]
at org.jboss.scanning.plugins.visitor.ReflectResourceVisitor.visit(Refle
ctResourceVisitor.java:86) [:1.0.0.GA]
at org.jboss.scanning.annotations.plugins.AnnotationsScanningPlugin.visi
t(AnnotationsScanningPlugin.java:89) [:1.0.0.GA]
at org.jboss.scanning.spi.helpers.ScanningPluginWrapper.visit(ScanningPl
uginWrapper.java:112) [:1.0.0.GA]
at org.jboss.classloading.plugins.visitor.FederatedResourceVisitor.visit
(FederatedResourceVisitor.java:101) [jboss-classloading.jar:2.2.0.GA]
at org.jboss.classloading.plugins.vfs.VFSResourceVisitor.visit(VFSResour
ceVisitor.java:264) [jboss-classloading-vfs.jar:2.2.0.GA]
at org.jboss.vfs.VirtualFile.visit(VirtualFile.java:408) [jboss-vfs.jar:
3.0.0.GA]
at org.jboss.vfs.VirtualFile.visit(VirtualFile.java:410) [jboss-vfs.jar:
3.0.0.GA]
at org.jboss.vfs.VirtualFile.visit(VirtualFile.java:410) [jboss-vfs.jar:
3.0.0.GA]
at org.jboss.vfs.VirtualFile.visit(VirtualFile.java:410) [jboss-vfs.jar:
3.0.0.GA]
at org.jboss.vfs.VirtualFile.visit(VirtualFile.java:410) [jboss-vfs.jar:
3.0.0.GA]
at org.jboss.vfs.VirtualFile.visit(VirtualFile.java:410) [jboss-vfs.jar:
3.0.0.GA]
at org.jboss.vfs.VirtualFile.visit(VirtualFile.java:410) [jboss-vfs.jar:
3.0.0.GA]
at org.jboss.vfs.VirtualFile.visit(VirtualFile.java:396) [jboss-vfs.jar:
3.0.0.GA]
at org.jboss.classloading.plugins.vfs.VFSResourceVisitor.visit(VFSResour
ceVisitor.java:102) [jboss-classloading-vfs.jar:2.2.0.GA]
at org.jboss.deployers.vfs.plugins.classloader.VFSDeploymentClassLoaderP
olicyModule.visit(VFSDeploymentClassLoaderPolicyModule.java:181) [:2.2.0.GA]
at org.jboss.scanning.plugins.DeploymentUnitScanner.scan(DeploymentUnitS
canner.java:111) [:1.0.0.GA]
at org.jboss.scanning.spi.helpers.UrlScanner.scan(UrlScanner.java:96) [:
1.0.0.GA]
at org.jboss.scanning.deployers.ScanningDeployer.deploy(ScanningDeployer
.java:95) [:1.0.0.GA]
at org.jboss.deployers.plugins.deployers.DeployerWrapper.deploy(Deployer
Wrapper.java:179) [:2.2.0.GA]
at org.jboss.deployers.plugins.deployers.DeployersImpl.doDeploy(Deployer
sImpl.java:1832) [:2.2.0.GA]
at org.jboss.deployers.plugins.deployers.DeployersImpl.doInstallParentFi
rst(DeployersImpl.java:1550) [:2.2.0.GA]
at org.jboss.deployers.plugins.deployers.DeployersImpl.doInstallParentFi
rst(DeployersImpl.java:1603) [:2.2.0.GA]
at org.jboss.deployers.plugins.deployers.DeployersImpl.install(Deployers
Impl.java:1491) [:2.2.0.GA]
at org.jboss.dependency.plugins.AbstractControllerContext.install(Abstra
ctControllerContext.java:379) [jboss-dependency.jar:2.2.0.GA]
at org.jboss.dependency.plugins.AbstractController.install(AbstractContr
oller.java:2044) [jboss-dependency.jar:2.2.0.GA]
at org.jboss.dependency.plugins.AbstractController.incrementState(Abstra
ctController.java:1083) [jboss-dependency.jar:2.2.0.GA]
at org.jboss.dependency.plugins.AbstractController.executeOrIncrementSta
teDirectly(AbstractController.java:1322) [jboss-dependency.jar:2.2.0.GA]
at org.jboss.dependency.plugins.AbstractController.resolveContexts(Abstr
actController.java:1246) [jboss-dependency.jar:2.2.0.GA]
at org.jboss.dependency.plugins.AbstractController.resolveContexts(Abstr
actController.java:1139) [jboss-dependency.jar:2.2.0.GA]
at org.jboss.dependency.plugins.AbstractController.change(AbstractContro
ller.java:939) [jboss-dependency.jar:2.2.0.GA]
at org.jboss.dependency.plugins.AbstractController.change(AbstractContro
ller.java:654) [jboss-dependency.jar:2.2.0.GA]
at org.jboss.deployers.plugins.deployers.DeployersImpl.change(DeployersI
mpl.java:1983) [:2.2.0.GA]
at org.jboss.deployers.plugins.deployers.DeployersImpl.process(Deployers
Impl.java:1076) [:2.2.0.GA]
at org.jboss.deployers.plugins.main.MainDeployerImpl.process(MainDeploye
rImpl.java:679) [:2.2.0.GA]
at org.jboss.system.server.profileservice.deployers.MainDeployerPlugin.p
rocess(MainDeployerPlugin.java:106) [:6.0.0.Final]
at org.jboss.profileservice.dependency.ProfileControllerContext$Delegate
Deployer.process(ProfileControllerContext.java:143) [:0.2.2]
at org.jboss.profileservice.dependency.ProfileDeployAction.deploy(Profil
eDeployAction.java:151) [:0.2.2]
at org.jboss.profileservice.dependency.ProfileDeployAction.installAction
Internal(ProfileDeployAction.java:94) [:0.2.2]
at org.jboss.kernel.plugins.dependency.InstallsAwareAction.installAction
(InstallsAwareAction.java:54) [jboss-kernel.jar:2.2.0.GA]
at org.jboss.kernel.plugins.dependency.InstallsAwareAction.installAction
(InstallsAwareAction.java:42) [jboss-kernel.jar:2.2.0.GA]
at org.jboss.dependency.plugins.action.SimpleControllerContextAction.sim
pleInstallAction(SimpleControllerContextAction.java:62) [jboss-dependency.jar:2.
2.0.GA]
at org.jboss.dependency.plugins.action.AccessControllerContextAction.ins
tall(AccessControllerContextAction.java:71) [jboss-dependency.jar:2.2.0.GA]
at org.jboss.dependency.plugins.AbstractControllerContextActions.install
(AbstractControllerContextActions.java:51) [jboss-dependency.jar:2.2.0.GA]
at org.jboss.dependency.plugins.AbstractControllerContext.install(Abstra
ctControllerContext.java:379) [jboss-dependency.jar:2.2.0.GA]
at org.jboss.dependency.plugins.AbstractController.install(AbstractContr
oller.java:2044) [jboss-dependency.jar:2.2.0.GA]
at org.jboss.dependency.plugins.AbstractController.incrementState(Abstra
ctController.java:1083) [jboss-dependency.jar:2.2.0.GA]
at org.jboss.dependency.plugins.AbstractController.executeOrIncrementSta
teDirectly(AbstractController.java:1322) [jboss-dependency.jar:2.2.0.GA]
at org.jboss.dependency.plugins.AbstractController.resolveContexts(Abstr
actController.java:1246) [jboss-dependency.jar:2.2.0.GA]
at org.jboss.dependency.plugins.AbstractController.resolveContexts(Abstr
actController.java:1139) [jboss-dependency.jar:2.2.0.GA]
at org.jboss.dependency.plugins.AbstractController.change(AbstractContro
ller.java:939) [jboss-dependency.jar:2.2.0.GA]
at org.jboss.dependency.plugins.AbstractController.change(AbstractContro
ller.java:654) [jboss-dependency.jar:2.2.0.GA]
at org.jboss.profileservice.dependency.ProfileActivationWrapper$BasicPro
fileActivation.start(ProfileActivationWrapper.java:190) [:0.2.2]
at org.jboss.profileservice.dependency.ProfileActivationWrapper.start(Pr
ofileActivationWrapper.java:87) [:0.2.2]
at org.jboss.profileservice.dependency.ProfileActivationService.activate
Profile(ProfileActivationService.java:215) [:0.2.2]
at org.jboss.profileservice.dependency.ProfileActivationService.activate
(ProfileActivationService.java:159) [:0.2.2]
at org.jboss.profileservice.bootstrap.AbstractProfileServiceBootstrap.ac
tivate(AbstractProfileServiceBootstrap.java:112) [:0.2.2]
at org.jboss.profileservice.resolver.BasicResolverFactory$ProfileResolve
rFacade.deploy(BasicResolverFactory.java:87) [:0.2.2]
at org.jboss.profileservice.bootstrap.AbstractProfileServiceBootstrap.st
art(AbstractProfileServiceBootstrap.java:91) [:0.2.2]
at org.jboss.system.server.profileservice.bootstrap.BasicProfileServiceB
ootstrap.start(BasicProfileServiceBootstrap.java:132) [:6.0.0.Final]
at org.jboss.system.server.profileservice.bootstrap.BasicProfileServiceB
ootstrap.start(BasicProfileServiceBootstrap.java:56) [:6.0.0.Final]
at org.jboss.bootstrap.impl.base.server.AbstractServer.startBootstraps(A
bstractServer.java:827) [jboss-bootstrap-impl-base.jar:2.1.0-alpha-5]
at org.jboss.bootstrap.impl.base.server.AbstractServer$StartServerTask.r
un(AbstractServer.java:417) [jboss-bootstrap-impl-base.jar:2.1.0-alpha-5]
at java.lang.Thread.run(Thread.java:662) [:1.6.0_24]
-
16. Re: ClassLoader Deploy Error Conflicting JARS JOSS AS6
msteedle Jun 28, 2011 2:32 PM (in response to surtax)Gary did you ever figure this out?
-
17. Re: ClassLoader Deploy Error Conflicting JARS JOSS AS6
surtax Jun 28, 2011 7:40 PM (in response to msteedle)Just thought I'd post how we got past all these problems, might be helpful to others who are tyring to resolve the conflicts.
I think Ales has outlined the problem pretty well and can be found in this post:
http://community.jboss.org/message/592509#592509
This is by no means the only way to resolve these problems, but just how we got around it. Our project was a Maven project, and our solution is quite Maven specific. Essentially use Maven to create a tree of your dependencies:
mvn dependency:tree
It should give you something that looks like this depending on your dependencies...
...
[INFO] +- javax.mail:mail:jar:1.4:compile
[INFO] +- org.apache.axis2:axis2:jar:1.4.1:compile
[INFO] +- wsdl4j:wsdl4j:jar:1.6.2:compile
[INFO] +- org.apache.ws.commons.axiom:axiom-impl:jar:1.2.7:compile
[INFO] | +- org.apache.ws.commons.axiom:axiom-api:jar:1.2.7:compile
[INFO] | | +- jaxen:jaxen:jar:1.1.1:compile
[INFO] | | | \- xerces:xercesImpl:jar:2.6.2:compile
[INFO] | | \- xml-apis:xml-apis:jar:1.3.04:compile
[INFO] | +- org.apache.geronimo.specs:geronimo-activation_1.1_spec:jar:1.0.1:compile
[INFO] | +- org.apache.geronimo.specs:geronimo-javamail_1.4_spec:jar:1.2:compile
[INFO] | +- org.codehaus.woodstox:wstx-asl:jar:3.2.4:compile
[INFO] | \- org.apache.geronimo.specs:geronimo-stax-api_1.0_spec:jar:1.0.1:compile
[INFO] +- backport-util-concurrent:backport-util-concurrent:jar:3.1:compile
[INFO] +- org.apache.ws.commons.schema:XmlSchema:jar:1.4.2:compile
[INFO] +- org.apache.neethi:neethi:jar:2.0.4:compile
[INFO] +- org.apache.poi:poi:jar:3.2-FINAL:compile
[INFO] +- org.apache.xmlbeans:xmlbeans:jar:2.4.0:compile
[INFO] | \- stax:stax-api:jar:1.0.1:compile
...
Using this information you will be able to spot from the stacktrace which each conflict actually refers to. So for example one of the conflicing libraries would be javax.activation. In your POM.xml simply change the scope to provided as below
<dependency>
<groupId>javax.activation</groupId>
<artifactId>activation</artifactId>
<version>1.1</version>
<scope>provided</scope>
</dependency>
Dependencies within dependencies such as these xerces depdency can be excluded as below
<dependency>
<groupId>org.apache.ws.commons.axiom</groupId>
<artifactId>axiom-impl</artifactId>
<version>1.2.7</version>
<exclusions>
<exclusion>
<artifactId>xml-apis</artifactId>
<groupId>xml-apis</groupId>
</exclusion>
<exclusion>
<artifactId>xercesImpl</artifactId>
<groupId>xerces</groupId>
</exclusion>
</exclusions>
</dependency>
Maven will then not include the library into your generated WAR and hence use the JBoss lib instead.
Although you will have to note that effectively you are moving away from your version of the library to JBoss's version which may cause problems with your app, depending on the nature of the differences in the versions of the libraries. So this may require code remediation on your part.
Again these have been quite maven specific however theres nothing to stop you from excluding the libraries from your WAR no matter which build script you use, ANT etc.
Long story short - unless you have a REALLY good reason, the easiest way to resolving these conflicts is to use JBoss's version of the libraries.