代码之家  ›  专栏  ›  技术社区  ›  Lydon Ch

EodData wsdl java连接

  •  4
  • Lydon Ch  · 技术社区  · 15 年前

    我一直在想如何启动与EodData.com的WSDL连接

    wsdl地址为

    http://ws.eoddata.com/data.asmx?wsdl
    

    我正在使用CXF创建客户端连接:

     QName qname = new QName("http://ws.eoddata.com/Data", "Data");
     Data data = new Data(new URL("http://ws.eoddata.com/data.asmx?wsdl"), qname);
     DataHttpGet dataGet =  data.getDataHttpGet();
     dataGet.login("xxx", "ppp");
    

    我得到了

    Caused by: org.apache.cxf.interceptor.Fault: Unmarshalling Error: unexpected element (uri:"http://schemas.xmlsoap.org/soap/envelope/", local:"Header"). Expected elements are <{http://ws.eoddata.com/Data}LoginResult> 
    

    不知道该如何启动连接?

    1 回复  |  直到 15 年前
        1
  •  1
  •   Garett    15 年前

    使用以下代码的快速测试对我有效。

    使用WSDL2Java:

    wsdl2java -autoNameResolution http://ws.eoddata.com/data.asmx?wsdl
    

    QName qname = new QName("http://ws.eoddata.com/Data", "Data"); 
    Data data = new Data(new URL("http://ws.eoddata.com/data.asmx?wsdl"), qname); 
    DataSoap dataSoap = data.getDataSoap();
    LOGINRESPONSE response = dataSoap.login("xxx", "ppp");
    
    System.out.println(response.getMessage());
    

    答复是:

    Invalid Username or Password