错误现象:
当客户端访问 webservice 的服务段的时候,客户端报错,具体报错信息如下:
Error 500--Internal Server Error |
java.lang.IncompatibleClassChangeError: class org.apache.axis.SOAPPart does not implement interface org.w 3c .dom.Document at org.apache.axis.message.MessageElement.addTextNode(MessageElement.java:1034) at org.apache.axis.message.SOAPHandler.endElement(SOAPHandler.java:118) at org.apache.axis.encoding.DeserializationContext.endElement(DeserializationContext.java:1077) at weblogic.apache.xerces.parsers.AbstractSAXParser.endElement(AbstractSAXParser.java(Compiled Code)) at weblogic.apache.xerces.impl.XMLNamespaceBinder.handleEndElement(XMLNamespaceBinder.java(Compiled Code)) at weblogic.apache.xerces.impl.XMLNamespaceBinder.endElement(XMLNamespaceBinder.java(Compiled Code)) at weblogic.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanEndElement(XMLDocumentFragmentScannerImpl.java(Compiled Code)) at weblogic.apache.xerces.impl.XMLDocumentFragmentScannerImpl$FragmentContentDispatcher.dispatch(XMLDocumentFragmentScannerImpl.java(Compiled Code)) at weblogic.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:329) at weblogic.apache.xerces.parsers.DTDConfiguration.parse(DTDConfiguration.java:525) at weblogic.apache.xerces.parsers.DTDConfiguration.parse(DTDConfiguration.java:581) at weblogic.apache.xerces.parsers.XMLParser.parse(XMLParser.java:152) at weblogic.apache.xerces.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1175) at weblogic.xml.jaxp.WebLogicXMLReader.parse(WebLogicXMLReader.java:135) at weblogic.xml.jaxp.RegistryXMLReader.parse(RegistryXMLReader.java:152) at javax.xml.parsers.SAXParser.parse(Unknown Source) at org.apache.axis.encoding.DeserializationContext.parse(DeserializationContext.java:225) at org.apache.axis.SOAPPart.getAsSOAPEnvelope(SOAPPart.java:645) at org.apache.axis.Message.getSOAPEnvelope(Message.java:424) at org.apache.axis.server.AxisServer.invoke(AxisServer.java:279) at org.apache.axis.transport.http.AxisServlet.doPost(AxisServlet.java:637) at javax.servlet.http.HttpServlet.service(HttpServlet.java:760) at org.apache.axis.transport.http.AxisServletBase.service(AxisServletBase.java:301) at javax.servlet.http.HttpServlet.service(HttpServlet.java(Compiled Code)) at weblogic.servlet.internal.ServletStubImpl$ServletInvocationAction.run(ServletStubImpl.java(Inlined Compiled Code)) at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java(Compiled Code)) at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java(Inlined Compiled Code)) at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java(Compiled Code)) at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java(Compiled Code)) at weblogic.security.service.SecurityManager.runAs(SecurityManager.java(Inlined Compiled Code)) at weblogic.servlet.internal.WebAppServletContext.invokeServlet(WebAppServletContext.java(Compiled Code)) at weblogic.servlet.internal.ServletRequestImpl.execute(ServletRequestImpl.java(Compiled Code)) at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java(Compiled Code)) at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:183) |
参考解决方式SupeSite/X-Space社区门户"h"rFoN$q4b8nU
修改 startweblogic.cmd ,将 axis 下的 saaj.jar 的路径放在 weblogic 的 webservices.jar 之前。