当我在jboss 6中部署一个Web服务项目时,我得到了以下的stackrace
引起:java.lang.LinkageError:接口itable初始化中的加载器约束违规:解析方法时“org.apache.axis.message.MessageElement.getChildElements(Ljavax / xml / namespace / QName;)Ljava / util / Iterator ;”当前类的类加载器(org / jboss / classloader / spi / base / BaseClassLoader的实例),org / apache / axis / message / MessageElement,以及接口javax / xml / soap / SOAPElement的类加载器(实例)具有签名中使用的javax / xml / namespace / QName类型的不同Class对象 at java.lang.Class.getDeclaredMethods0(Native Method)[:1.6.0_13] at java.lang.Class.privateGetDeclaredMethods(Class.java:2427)[:1.6.0_13] at java.lang.Class.getDeclaredMethods(Class.java:1791)[:1.6.0_13] 在org.jboss.deployment.AnnotatedClassFilter.hasAnnotations(AnnotatedClassFilter.java:186)[:6.0.0.20100429-M3] 在org.jboss.deployment.AnnotatedClassFilter.accepts(AnnotatedClassFilter.java:114)[:6.0.0.20100429-M3] 在org.jboss.deployment.AnnotatedClassFilter.visit(AnnotatedClassFilter.java:99)[:6.0.0.20100429-M3] 在org.jboss.vfs.VirtualFile.visit(VirtualFile.java:407)[jboss-vfs.jar:3.0.0.CR5] 在org.jboss.vfs.VirtualFile.visit(VirtualFile.java:409)[jboss-vfs.jar:3.0.0.CR5] 在org.jboss.vfs.VirtualFile.visit(VirtualFile.java:409)[jboss-vfs.jar:3.0.0.CR5] 在org.jboss.vfs.VirtualFile.visit(VirtualFile.java:409)[jboss-vfs.jar:3.0.0.CR5] 在org.jboss.vfs.VirtualFile.visit(VirtualFile.java:409)[jboss-vfs.jar:3.0.0.CR5] 在org.jboss.vfs.VirtualFile.visit(VirtualFile.java:395)[jboss-vfs.jar:3.0.0.CR5] at org.jboss.web.deployers.WarAnnotationMetaDataDeployer.getClasses(WarAnnotationMetaDataDeployer.java:172)[:6.0.0.20100429-M3] 在org.jboss.web.deployers.WarAnnotationMetaDataDeployer.processMetaData(WarAnnotationMetaDataDeployer.java:145)[:6.0.0.20100429-M3] 在org.jboss.web.deployers.WarAnnotationMetaDataDeployer.deploy(WarAnnotationMetaDataDeployer.java:119)[:6.0.0.20100429-M3] 在org.jboss.web.deployers.WarAnnotationMetaDataDeployer.deploy(WarAnnotationMetaDataDeployer.java:80)[:6.0.0.20100429-M3] 在org.jboss.deployers.plugins.deployers.DeployerWrapper.deploy(DeployerWrapper.java:179)[:2.2.0.Alpha4] ......还有26个
请帮帮我...... :)
答案 0 :(得分:0)
抛出异常是因为在你的web应用程序中至少存在一个包含javax.xml.namespace.QName
类的jar,并且该类与JBoss jar中包含的类冲突。
在JBoss上部署时,应该从Web应用程序中删除(这些)jar。
包含javax.xml.namespace.QName
类的jar列表位于http://www.findjar.com/class/javax/xml/namespace/QName.html
答案 1 :(得分:0)
如果使用eclipse
创建EAR / WAR文件,我们会遇到此问题很明显,在EAR / war文件中有两个jar文件。
使用WinRAR打开EAR / WAR文件,并检查是否存在两个axis.jar文件。如果是,则删除jar文件并重新部署