【问题标题】:call service from wsdl file using jquery soap使用 jquery soap 从 wsdl 文件调用服务
【发布时间】:2015-12-17 19:15:25
【问题描述】:

我从 siebel 团队获得了一个 WSDL 文件。我需要从 Jquery $.soap 调用中调用此服务并解析值。

WSDL 文件内容如下所示

<?xml version="1.0" encoding="UTF-8" ?>
    <definitions xmlns="http://schemas.xmlsoap.org/wsdl/" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:xsdLocal1="http://www.siebel.com/xml/GetAccountInfoReqData" targetNamespace="http://siebel.com/CustomUI" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/"
    xmlns:xsdLocal2="http://www.siebel.com/xml/GetAccountInfoReplyData" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:tns="http://siebel.com/CustomUI">
      <types>
        <xsd:schema elementFormDefault="qualified" attributeFormDefault="unqualified" xmlns:xsdLocal1="http://www.siebel.com/xml/GetAccountInfoReqData" targetNamespace="http://www.siebel.com/xml/GetAccountInfoReqData" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
          <xsd:annotation>
            <xsd:documentation>Copyright (C) 2001-2004 Siebel Systems, Inc. All rights reserved. Siebel XSD Generation</xsd:documentation>

我使用 Jquery soap api 尝试了这种方式。提交肥皂服务后,无论我提交什么,我都会得到相同的 wsdl 文件内容。

$.soap({
     url: 'http://localhost/soap/soapservices.wsdl?',
     method: '',
     success: function(soapResponse) {},
     error: function(SOAPResponse) {}
   });

这是正确的方法还是请给我一些建议,想法开始我的工作。

【问题讨论】:

  • 你的服务器端语言是什么?

标签: javascript jquery soap wsdl


【解决方案1】:

您可以使用您的服务器端代码来调用 Web 服务方法。

步骤

  • 向传递参数的控制器/服务器端方法发起 AJAX 请求
  • 从您的服务器代码调用 Web 服务方法并以 JSON 格式返回结果
  • 在你的 jQuery 中解析 JSON

【讨论】:

  • 实际上我们的应用程序只使用了客户端技术。 Jquery mobile Jquery ui javavascript .. 它用于前端应用程序
  • 我们还能用这个 WSDL 文件做什么。他们告诉使用肥皂服务来获取价值。在这个 WSDL 文件中包含 SOAP 地址。 ------
    xx.xx.xx.xxx/eai_enu/…>
【解决方案2】:

WSDL 不是服务调用的端点 - 它描述了服务(它们在哪里以及它们期望什么)。在wsdl 的内容中应该有一个或多个service 标签,如下所示:

<service name="GetAccountInfoService">
    <port name="GetAccountInfoPort" binding="tns:GetAccountInfoBinding">
       <soap:address location="http://example.com/accountinfo"/>
    </port>
</service>

在这个sn-p中你看到你要调用的服务的地址其实是http://example.com/accountinfo。其他部分(portbinding)描述了端点接受/返回的内容以及它希望您如何与之通信。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-08-26
    • 1970-01-01
    相关资源
    最近更新 更多