public class YakWebServiceClient {
    private static JaxWsProxyFactoryBean factory = new JaxWsProxyFactoryBean();
    private static FileService client;    private void Config(){
     try{
     factory.setServiceClass(FileService.class);
                  //webserviceAddress这个变量是我从配置文件里取得值,也就是http地址。
     factory.setAddress(webserviceAddress);
     client = (FileService) factory.create();
    
                  <以下省略……>
     }catch(Exception ex){
     Log.singleton().error(LOG_PREFIX + "Config function is false!");
     Log.singleton().error(ex);
     }
  
    }    <以下省略……>
}
我在调用Config这个函数时,出现了exception,也就是在执行factory.create()这段代码时报错。错误如下:
Exception in thread "Thread-6" java.lang.AbstractMethodError: org.apache.xerces.dom.DeferredElementNSImpl.getTextContent()Ljava/lang/String;
        at org.apache.cxf.bus.extension.ExtensionFragmentParser.deserialiseNamespaces(ExtensionFragmentParser.java:89)
        at org.apache.cxf.bus.extension.ExtensionFragmentParser.deserialiseExtensions(ExtensionFragmentParser.java:78)
        at org.apache.cxf.bus.extension.ExtensionFragmentParser.getExtensions(ExtensionFragmentParser.java:60)
        at org.apache.cxf.bus.extension.ExtensionManagerImpl.loadFragment(ExtensionManagerImpl.java:120)
        at org.apache.cxf.bus.extension.ExtensionManagerImpl.load(ExtensionManagerImpl.java:114)
        at org.apache.cxf.bus.extension.ExtensionManagerImpl.<init>(ExtensionManagerImpl.java:83)
        at org.apache.cxf.bus.extension.ExtensionManagerImpl.<init>(ExtensionManagerImpl.java:57)
        at org.apache.cxf.bus.extension.ExtensionManagerBus.<init>(ExtensionManagerBus.java:91)
        at org.apache.cxf.bus.CXFBusFactory.createBus(CXFBusFactory.java:41)
        at org.apache.cxf.bus.CXFBusFactory.createBus(CXFBusFactory.java:37)
        at org.apache.cxf.bus.CXFBusFactory.createBus(CXFBusFactory.java:33)
        at org.apache.cxf.BusFactory.getDefaultBus(BusFactory.java:69)
        at org.apache.cxf.BusFactory.getThreadDefaultBus(BusFactory.java:106)
        at org.apache.cxf.BusFactory.getThreadDefaultBus(BusFactory.java:97)
        at org.apache.cxf.endpoint.AbstractEndpointFactory.getBus(AbstractEndpointFactory.java:73)
        at org.apache.cxf.frontend.AbstractWSDLBasedEndpointFactory.initializeServiceFactory(AbstractWSDLBasedEndpointFactory.java:228)
        at org.apache.cxf.frontend.AbstractWSDLBasedEndpointFactory.createEndpoint(AbstractWSDLBasedEndpointFactory.java:99)
        at org.apache.cxf.frontend.ClientFactoryBean.create(ClientFactoryBean.java:52)
        at org.apache.cxf.frontend.ClientProxyFactoryBean.create(ClientProxyFactoryBean.java:102)
        at org.apache.cxf.jaxws.JaxWsProxyFactoryBean.create(JaxWsProxyFactoryBean.java:115)
        at yak.sysinterface.front.webserviceclient.YakWebServiceClient.Config(YakWebServiceClient.java:119)
        at yak.sysinterface.front.webserviceclient.YakWebServiceClient.DownloadFiles(YakWebServiceClient.java:210)
        at yak.sysinterface.front.unpkg.filescan.FileScanner.run(FileScanner.java:459)
        at java.lang.Thread.run(Thread.java:595)请问是我代码不对还是哪里的问题?webservice我是新手。请高手指导!

解决方案 »

  1.   

            at org.apache.cxf.bus.extension.ExtensionFragmentParser.getExtensions(ExtensionFragmentParser.java:60)
            at org.apache.cxf.bus.extension.ExtensionManagerImpl.loadFragment(ExtensionManagerImpl.java:120)
            at org.apache.cxf.bus.extension.ExtensionManagerImpl.load(ExtensionManagerImpl.java:114)
            at org.apache.cxf.bus.extension.ExtensionManagerImpl.<init>(ExtensionManagerImpl.java:83)
            at org.apache.cxf.bus.extension.ExtensionManagerImpl.<init>(ExtensionManagerImpl.java:57)
            at org.apache.cxf.bus.extension.ExtensionManagerBus.<init>(ExtensionManagerBus.java:91)
            at org.apache.cxf.bus.CXFBusFactory.createBus(CXFBusFactory.java:41)
            at org.apache.cxf.bus.CXFBusFactory.createBus(CXFBusFactory.java:37)
            at org.apache.cxf.bus.CXFBusFactory.createBus(CXFBusFactory.java:33)
            at org.apache.cxf.BusFactory.getDefaultBus(BusFactory.java:69)
            at org.apache.cxf.BusFactory.getThreadDefaultBus(BusFactory.java:106)
            at org.apache.cxf.BusFactory.getThreadDefaultBus(BusFactory.java:97)
            at org.apache.cxf.endpoint.AbstractEndpointFactory.getBus(AbstractEndpointFactory.java:73)
            at org.apache.cxf.frontend.AbstractWSDLBasedEndpointFactory.initializeServiceFactory(AbstractWSDLBasedEndpointFactory.java:228)
            at org.apache.cxf.frontend.AbstractWSDLBasedEndpointFactory.createEndpoint(AbstractWSDLBasedEndpointFactory.java:99)
            at org.apache.cxf.frontend.ClientFactoryBean.create(ClientFactoryBean.java:52)
            at org.apache.cxf.frontend.ClientProxyFactoryBean.create(ClientProxyFactoryBean.java:102)
            at org.apache.cxf.jaxws.JaxWsProxyFactoryBean.create(JaxWsProxyFactoryBean.java:115)
    还是这个错误,就是在factory.create()时候报的错误。
    我公司有代理,是不是和这个有关系?