2014-05-14 70 views
0

我面臨着與聯動的問題,當我部署我的應用程序的WebSphere 8.5聯動錯誤的SAXParser

Error in the XML parsing of the included Input Stream: java.lang.LinkageError: loading constraint violation when resolving method "javax/xml/parsers/SAXParser.parse(Lorg/xml/sax/InputSource;Lorg/xml/sax/helpers/DefaultHandler;)V" : loader "com/ibm/ws/classloader/[email protected]" of class "com/XMLParser/CreateParser" and loader "com/ibm/oti/vm/[email protected]" of class "javax/xml/parsers/SAXParser" have different types for the method signature. 

我在我的類路徑下面罐子。 我已經將加載器設置爲PARENT_LAST。

我試圖單獨使用主要方法調試類,並發現它正在使用jdk 1.5 rt.jar的saxparser的impl,並且它按預期工作。部署耳朵後,它會在代碼碰到SAXParser.parse(InputSoruce,DefaultHandler)方法時拋出異常。

JAXB-IMPL 2.2.6, JAXB-庫-1.0.5, JAXB的XJC-2.0EA3, 的dom4j-1.1, 薩克斯2.0.1

沒有任何一個有關於這個任何想法問題?

回答

2

您的類加載器可以看到兩個org.xml.sax副本。第一個原因是您已將SAX API包含在PARENT_LAST類加載器中,第二個是通過JRE中的javax.xml.parsers間接進行的。您需要從您的應用程序中刪除SAX API JAR,或者您需要將javax.xml(也許更多)API + impl添加到您的應用程序中。

+0

它爲我工作。感謝bkail。 – Achyuth