2017-03-29 90 views
-1
import javax.xml.namespace.NamespaceContext; 
XPath xpath = XPathFactory.newInstance().newXPath(); 
xpath.setNamespaceContext(some code goes here) 

我在web应用程序使用javax.xml.namespace.NamespaceContext当JBoss服务器上部署的,它提供了以下错误:java.lang.LinkageError的:装载机约束违规javax.xml.xpath.XPath.setNamespaceContext

javax.servlet.ServletException: java.lang.LinkageError: loader constraint violation: when resolving interface method "javax.xml.xpath.XPath.setNamespaceContext(Ljavax/xml/namespace/NamespaceContext;)V" the class loader (instance of org/jboss/classloader/spi/base/BaseClassLoader) of the current class, com/accenture/mdh/sso/util/Util, and the class loader (instance of <bootloader>) for resolved class, javax/xml/xpath/XPath, have different Class objects for the type)V used in the signature 
    org.apache.jasper.runtime.PageContextImpl.doHandlePageException(PageContextImpl.java:852) 
    org.apache.jasper.runtime.PageContextImpl.handlePageException(PageContextImpl.java:781) 
    org.apache.jsp.jsp.LoginConsumer_jsp._jspService(LoginConsumer_jsp.java:187) 
    org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70) 
    javax.servlet.http.HttpServlet.service(HttpServlet.java:717) 
    org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:369) 
    org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:322) 
    org.apache.jasper.servlet.JspServlet.service(JspServlet.java:249) 
    javax.servlet.http.HttpServlet.service(HttpServlet.java:717) 
    org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96) 

我通过互联网搜索,似乎有与WEB-INF/lib中的javax.xml.namespace.NamespaceContext冲突的罐子。但是,我仍然无法找到原因。真的很感谢你的想法。

+1

你有一个或两个那些罐子的? – efekctive

+0

有一个未使用的jar“javax.xml.stream_1.0.1.v201004272200.jar”,它具有相同的名称空间。即使删除它,我仍然得到相同的错误 – Anuruddha

回答

0

不包括以下具有相同包名称javax.xml.namespace.NamespaceContext的库解决了该问题。

  • STAX-api.jar中
  • javax.xml.stream_1.0.1.v201004272200.jar
相关问题