在使用jdk 1.5但不使用1.6时运行getNamespaceContext()获取NoSuchMethodError

时间:2012-01-15 13:06:56

标签: java jax-ws jdk1.5 nosuchmethoderror

我正在运行一个用java编写的程序,部署在Oracle应用服务器上,运行1.5 JVM。以下是堆栈跟踪:

Exception in thread "main" java.lang.NoSuchMethodError: com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.getNamespaceContext()Lcom/sun/org/apache/xerces/internal/xni/NamespaceContext;
 at com.sun.org.apache.xerces.internal.impl.XMLStreamReaderImpl.<init>(XMLStreamReaderImpl.java:99)
 at com.sun.xml.internal.stream.XMLInputFactoryImpl.getXMLStreamReaderImpl(XMLInputFactoryImpl.java:264)
 at com.sun.xml.internal.stream.XMLInputFactoryImpl.createXMLStreamReader(XMLInputFactoryImpl.java:136)
 at com.sun.xml.ws.api.streaming.XMLStreamReaderFactory$Zephyr.newInstance(XMLStreamReaderFactory.java:251)
 at com.sun.xml.ws.api.streaming.XMLStreamReaderFactory.<clinit>(XMLStreamReaderFactory.java:84)
 at com.sun.xml.ws.wsdl.parser.RuntimeWSDLParser.createReader(RuntimeWSDLParser.java:805)
 at com.sun.xml.ws.wsdl.parser.RuntimeWSDLParser.resolveWSDL(RuntimeWSDLParser.java:262)
 at com.sun.xml.ws.wsdl.parser.RuntimeWSDLParser.parse(RuntimeWSDLParser.java:129)
 at com.sun.xml.ws.client.WSServiceDelegate.parseWSDL(WSServiceDelegate.java:265)
 at com.sun.xml.ws.client.WSServiceDelegate.<init>(WSServiceDelegate.java:228)
 at com.sun.xml.ws.client.WSServiceDelegate.<init>(WSServiceDelegate.java:176)
 at com.sun.xml.ws.spi.ProviderImpl.createServiceDelegate(ProviderImpl.java:104)
 at javax.xml.ws.Service.<init>(Service.java:56)
 at com.earthport.bind.MerchantAPIService.<init>(MerchantAPIService.java:50)
 at com.earthport.client.service.stub.MerchantAPIClientImpl$1CustomMerchantAPIService.    <init>(MerchantAPIClientImpl.java:107)
 at     com.earthport.client.service.stub.MerchantAPIClientImpl.createMerchantAPIService(MerchantAPI    ClientImpl.java:111)
 at com.earthport.client.service.stub.MerchantAPIClientImpl.<init>    (MerchantAPIClientImpl.java:84)
 at     com.earthport.client.service.ServiceProxyFactoryImpl.createServiceProxy(ServiceProxyFactoryI    mpl.java:25)
 at utils.AmxEPAccCre.<init>(AmxEPAccCre.java:79)
 at utils.WService.<init>(WService.java:95)
 at utils.WService.main(WService.java:795)
Process exited.

如果我使用jdk 1.6运行完全相同的程序,程序运行完美。这是库引用的特定问题吗?有人看过这个例外吗?

欢呼声。

1 个答案:

答案 0 :(得分:0)

我敢打赌,您的应用程序或Oracle AppServer附带的Xerces实现与JDK附带的Xerces实现之间存在冲突。

它适用于JDK6中的那个,但与JDK 5中的不兼容。