soap 相关问题

简单对象访问协议(SOAP)是用于在Web服务的实现中交换结构化信息的协议规范。

如何使用 (WSSE) WS-security 制作 WSDL 文件

我需要让 SoapUI 从 WSDL 文件生成以下(预期)xml 请求(注意 wsu + wsse 标识符 + PasswordText) 我需要让 SoapUI 从 WSDL 文件生成以下(预期)xml 请求(注意 wsu + wsse 标识符 + PasswordText) <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ftf="http://mycompany.com"> <soapenv:Header> <wsse:Security soapenv:mustUnderstand="1" xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd" xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd"> <wsse:UsernameToken> <wsse:Username>?</wsse:Username> <wsse:Password Type="?">mypassword</wsse:Password> </wsse:UsernameToken> </wsse:Security> </soapenv:Header> <soapenv:Body> <ftf:DsOfferedRateDeleteReq> <!--Optional:--> <ftf:OfferedRateID>?</ftf:OfferedRateID> </ftf:DsOfferedRateDeleteReq> </soapenv:Body> </soapenv:Envelope> 目前我只能这么做: (see my answer below, because stackoverflow didn't let me post so much code...) 您对如何完成 wsdl 以便形成预期的响应有什么想法吗? 当前 wsdl <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:sup="http://mycompany.com" xmlns:req="http://mycompany.com/type/request"> <soapenv:Header> <sup:Security> <UsernameToken> <Username>?</Username> <Password>?</Password> </UsernameToken> </sup:Security> </soapenv:Header> <soapenv:Body> <req:DsOfferedRateDeleteReq> <!--Optional:--> <req:OfferedRateID>?</req:OfferedRateID> </req:DsOfferedRateDeleteReq> </soapenv:Body> </soapenv:Envelope> 我当前的wsdl <?xml version="1.0" encoding="UTF-8"?> <definitions xmlns="http://schemas.xmlsoap.org/wsdl/" xmlns:wsse="http://support.mycompany.com" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:tns="http://support.mycompany.com" xmlns:ftf="http://service.mycompany.com" xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:request="http://support.mycompany.com/type/request" xmlns:response="http://support.mycompany.com/type/response" targetNamespace="http://support.mycompany.com" name="FTFWS"> <types> <xsd:schema xmlns="http://www.w3.org/2001/XMLSchema" soapenv:mustUnderstand="1" targetNamespace="http://support.mycompany.com"> <xsd:complexType name="SecurityHeader"> <xsd:sequence> <xsd:element name="UsernameToken"> <xsd:complexType> <xsd:sequence> <xsd:element name="Username" type="xsd:string"/> <xsd:element name="Password" type="xsd:string"/> </xsd:sequence> </xsd:complexType> </xsd:element> </xsd:sequence> </xsd:complexType> <xsd:element name="Security" type="wsse:SecurityHeader"/> </xsd:schema> <xsd:schema xmlns="http://www.w3.org/2001/XMLSchema" xmlns:tns="http://support.mycompany.com" targetNamespace="http://support.mycompany.com" elementFormDefault="qualified"> <complexType name="ContextData"> <sequence> <element type="xsd:string" name="fromSystem" minOccurs="0" maxOccurs="1" /> <element type="xsd:string" name="toSystem" minOccurs="0" maxOccurs="1" /> <element type="xsd:string" name="sessionId" minOccurs="0" maxOccurs="1" /> <element type="xsd:long" name="processId" minOccurs="0" maxOccurs="1" /> <element type="xsd:language" name="locale" minOccurs="0" maxOccurs="1" /> </sequence> </complexType> <element type="tns:ContextData" name="ContextData" /> <complexType name="OperationFault"> <sequence> <element type="xsd:string" name="faultCode" minOccurs="1" maxOccurs="1" /> <element type="xsd:string" name="faultMessage" minOccurs="1" maxOccurs="1" /> </sequence> </complexType> <element type="tns:OperationFault" name="OperationFault" /> <complexType name="DSCALLFAULT"> <sequence> <element type="xsd:int" name="faultcode" minOccurs="1" maxOccurs="1" /> <element type="xsd:string" name="faultmessage" minOccurs="1" maxOccurs="1" /> </sequence> </complexType> <element type="tns:DSCALLFAULT" name="DSCALLFAULT" /> <complexType name="DSCALLRESPONSE"> <sequence> <element type="xsd:string" name="commandresult" minOccurs="1" maxOccurs="1" /> </sequence> </complexType> <element type="tns:DSCALLRESPONSE" name="DSCALLRESPONSE" /> <complexType name="DSCALL"> <sequence> <element type="xsd:string" name="commandtext" minOccurs="1" maxOccurs="1" /> <element type="xsd:string" name="commanddata" minOccurs="1" maxOccurs="1" /> <element type="tns:ContextData" name="contextdata" minOccurs="0" maxOccurs="1" /> </sequence> </complexType> <element type="tns:DSCALL" name="DSCALL" /> <complexType name="DSCALLASYNC"> <sequence> <element type="xsd:string" name="commandtext" minOccurs="1" maxOccurs="1" /> <element type="xsd:string" name="commanddata" minOccurs="1" maxOccurs="1" /> <element type="tns:ContextData" name="contextdata" minOccurs="0" maxOccurs="1" /> </sequence> </complexType> <element type="tns:DSCALLASYNC" name="DSCALLASYNC" /> <complexType name="Admmoduleinfo"> <sequence> <element type="tns:ContextData" name="ContextData" minOccurs="0" maxOccurs="1" /> </sequence> </complexType> <element type="tns:Admmoduleinfo" name="Admmoduleinfo" /> <complexType name="AdmmoduleinfoRes"> <sequence> <element type="xsd:string" name="PACKAGESYSNAME" minOccurs="1" maxOccurs="1" /> <element type="xsd:string" name="PACKAGENAME" minOccurs="1" maxOccurs="1" /> <element type="xsd:string" name="PACKAGEVERSION" minOccurs="1" maxOccurs="1" /> <element type="xsd:string" name="EXTINTEGRATION" minOccurs="1" maxOccurs="1" /> <element type="xsd:string" name="PACKAGESTATUS" minOccurs="1" maxOccurs="1" /> <element type="xsd:string" name="PACKAGEMONITOR" minOccurs="1" maxOccurs="1" /> <element type="tns:Right" name="PACKAGERIGHTS" minOccurs="1" maxOccurs="unbounded" /> <element type="tns:Group" name="PACKAGEGROUPS" minOccurs="1" maxOccurs="unbounded" /> <element type="tns:Role" name="PACKAGEROLES" minOccurs="1" maxOccurs="unbounded" /> <element type="tns:PackageDescription" name="PACKAGEDESCRIPTION" minOccurs="0" maxOccurs="unbounded" /> </sequence> </complexType> <element type="tns:AdmmoduleinfoRes" name="AdmmoduleinfoRes" /> <complexType name="RoleRightFilter"> <sequence> <element type="xsd:string" name="SYSNAME" minOccurs="1" maxOccurs="1" /> <element type="xsd:string" name="OPERATION" minOccurs="1" maxOccurs="1" /> <element type="xsd:anyType" name="VALUES" minOccurs="0" maxOccurs="unbounded" /> </sequence> </complexType> <element type="tns:RoleRightFilter" name="RoleRightFilter" /> <complexType name="RoleRight"> <sequence> <element type="xsd:string" name="RIGHTSYSNAME" minOccurs="1" maxOccurs="1" /> <element type="tns:RoleRightFilter" name="FILTERS" minOccurs="0" maxOccurs="unbounded" /> </sequence> </complexType> <element type="tns:RoleRight" name="RoleRight" /> <complexType name="Role"> <sequence> <element type="xsd:string" name="ROLESYSNAME" minOccurs="1" maxOccurs="1" /> <element type="xsd:string" name="ROLENAME" minOccurs="1" maxOccurs="1" /> <element type="xsd:string" name="DESCRIPTION" minOccurs="0" maxOccurs="1" /> <element type="tns:RoleRight" name="RIGHTS" minOccurs="0" maxOccurs="unbounded" /> </sequence> </complexType> <element type="tns:Role" name="Role" /> <complexType name="RightFilter"> <sequence> <element type="xsd:string" name="SYSNAME" minOccurs="1" maxOccurs="1" /> <element type="xsd:string" name="OPERATION" minOccurs="0" maxOccurs="1" /> <element type="xsd:string" name="DATASOURCEURL" minOccurs="0" maxOccurs="1" /> </sequence> </complexType> <element type="tns:RightFilter" name="RightFilter" /> <complexType name="Right"> <sequence> <element type="xsd:string" name="RIGHTSYSNAME" minOccurs="1" maxOccurs="1" /> <element type="xsd:string" name="RIGHTNAME" minOccurs="1" maxOccurs="1" /> <element type="xsd:string" name="RIGHTPARENT" minOccurs="0" maxOccurs="1" /> <element type="tns:RightFilter" name="FILTERS" minOccurs="0" maxOccurs="unbounded" /> </sequence> </complexType> <element type="tns:Right" name="Right" /> <complexType name="GroupRightFilter"> <sequence> <element type="xsd:string" name="SYSNAME" minOccurs="1" maxOccurs="1" /> <element type="xsd:string" name="OPERATION" minOccurs="0" maxOccurs="1" /> <element type="xsd:anyType" name="VALUES" minOccurs="0" maxOccurs="unbounded" /> </sequence> </complexType> <element type="tns:GroupRightFilter" name="GroupRightFilter" /> <complexType name="GroupRight"> <sequence> <element type="xsd:string" name="RIGHTSYSNAME" minOccurs="1" maxOccurs="1" /> <element type="tns:GroupRightFilter" name="FILTERS" minOccurs="0" maxOccurs="unbounded" /> </sequence> </complexType> <element type="tns:GroupRight" name="GroupRight" /> <complexType name="Group"> <sequence> <element type="xsd:string" name="GROUPNAME" minOccurs="1" maxOccurs="1" /> <element type="xsd:string" name="DESCRIPTION" minOccurs="1" maxOccurs="1" /> <element type="tns:Group" name="GROUPS" minOccurs="0" maxOccurs="unbounded" /> <element type="tns:Right" name="RIGHTS" minOccurs="0" maxOccurs="unbounded" /> </sequence> </complexType> <element type="tns:Group" name="Group" /> <complexType name="Service"> <sequence> <element type="xsd:string" name="SVCALIAS" minOccurs="1" maxOccurs="1" /> <element type="xsd:string" name="SVCDESC" minOccurs="0" maxOccurs="1" /> </sequence> </complexType> <element type="tns:Service" name="Service" /> <complexType name="Module"> <sequence> <element type="xsd:string" name="MODULENAME" minOccurs="1" maxOccurs="1" /> <element type="xsd:string" name="MODULEDESC" minOccurs="0" maxOccurs="1" /> </sequence> </complexType> <element type="tns:Module" name="Module" /> <complexType name="ServiceMethod"> <sequence> <element type="xsd:string" name="METHODNAME" minOccurs="1" maxOccurs="1" /> <element type="xsd:string" name="METHODDESC" minOccurs="0" maxOccurs="1" /> <element type="xsd:string" name="FINDER" minOccurs="0" maxOccurs="1" /> <element type="tns:Parameter" name="METHODPARAMSIN" minOccurs="0" maxOccurs="unbounded" /> <element type="tns:Parameter" name="METHODPARAMSOUT" minOccurs="0" maxOccurs="unbounded" /> </sequence> </complexType> <element type="tns:ServiceMethod" name="ServiceMethod" /> <complexType name="Parameter"> <sequence> <element type="xsd:string" name="ATTRNAME" minOccurs="1" maxOccurs="1" /> <element type="xsd:string" name="ATTRDESC" minOccurs="0" maxOccurs="1" /> <element type="tns:Parameter" name="ATTRCHILD" minOccurs="0" maxOccurs="unbounded" /> <element type="xsd:string" name="ATTRTYPE" minOccurs="1" maxOccurs="1" /> <element type="xsd:string" name="REQUIRED" minOccurs="0" maxOccurs="1" /> </sequence> </complexType> <element type="tns:Parameter" name="Parameter" /> <complexType name="ObjOperation"> <sequence> <element type="xsd:string" name="OPERNAME" minOccurs="1" maxOccurs="1" /> <element type="xsd:string" name="OPERDESC" minOccurs="0" maxOccurs="1" /> <element type="xsd:string" name="OPERSMETHOD" minOccurs="1" maxOccurs="1" /> </sequence> </complexType> <element type="tns:ObjOperation" name="ObjOperation" /> <complexType name="BObject"> <sequence> <element type="xsd:string" name="OBJSYSNAME" minOccurs="1" maxOccurs="1" /> <element type="xsd:string" name="OBJNAME" minOccurs="1" maxOccurs="1" /> <element type="xsd:string" name="OBJNAMELAT" minOccurs="0" maxOccurs="1" /> <element type="xsd:string" name="OBJDESC" minOccurs="0" maxOccurs="1" /> <element type="xsd:boolean" name="SUPPORTSCLS" minOccurs="0" maxOccurs="1" /> <element type="xsd:boolean" name="SUPPORTSVER" minOccurs="0" maxOccurs="1" /> <element type="xsd:boolean" name="SUPPORTSSTM" minOccurs="0" maxOccurs="1" /> <element type="xsd:boolean" name="SUPPORTSADAT" minOccurs="0" maxOccurs="1" /> <element type="tns:ObjOperation" name="OBJOPERATIONS" minOccurs="0" maxOccurs="unbounded" /> </sequence> </complexType> <element type="tns:BObject" name="BObject" /> <complexType name="PackageDescription"> <sequence> <element type="tns:Module" name="BMODULE" minOccurs="0" maxOccurs="unbounded" /> <element type="tns:Service" name="SERVICE" minOccurs="0" maxOccurs="unbounded" /> <element type="tns:ServiceMethod" name="SERVICEMETHODS" minOccurs="0" maxOccurs="unbounded" /> <element type="tns:BObject" name="BOBJECTS" minOccurs="0" maxOccurs="unbounded" /> </sequence> </complexType> <element type="tns:PackageDescription" name="PackageDescription" /> <complexType name="GetVersion"> <sequence> <element type="tns:ContextData" name="ContextData" minOccurs="0" maxOccurs="1" /> </sequence> </complexType> <element type="tns:GetVersion" name="GetVersion" /> <complexType name="GetVersionRes"> <sequence> <element type="xsd:string" name="Project-Version" minOccurs="1" maxOccurs="1" /> </sequence> </complexType> <element type="tns:GetVersionRes" name="GetVersionRes" /> <complexType name="GetHealthInfo"> <sequence> <element type="tns:ContextData" name="ContextData" minOccurs="0" maxOccurs="1" /> </sequence> </complexType> <element type="tns:GetHealthInfo" name="GetHealthInfo" /> <complexType name="GetHealthInfoRes"> <sequence> <element type="tns:HealthInfoElement" name="Result" minOccurs="0" maxOccurs="unbounded" /> </sequence> </complexType> <element type="tns:GetHealthInfoRes" name="GetHealthInfoRes" /> <complexType name="HealthInfoElement"> <sequence> <element type="xsd:string" name="key" minOccurs="0" maxOccurs="1" /> <element type="xsd:int" name="value" minOccurs="0" maxOccurs="1" /> </sequence> </complexType> <element type="tns:HealthInfoElement" name="HealthInfoElement" /> </xsd:schema> <xsd:schema xmlns="http://www.w3.org/2001/XMLSchema" xmlns:type="http://support.mycompany.com/type" targetNamespace="http://support.mycompany.com/type" elementFormDefault="qualified"> </xsd:schema> <xsd:schema xmlns="http://www.w3.org/2001/XMLSchema" xmlns:request="http://support.mycompany.com/type/request" xmlns:type="http://support.mycompany.com/type" targetNamespace="http://support.mycompany.com/type/request" elementFormDefault="qualified"> <complexType name="DsOfferedRateDeleteReq"> <sequence> <element type="xsd:long" name="OfferedRateID" minOccurs="0" maxOccurs="1"/> </sequence> </complexType> <element type="request:DsOfferedRateDeleteReq" name="DsOfferedRateDeleteReq"/> </xsd:schema> <xsd:schema xmlns="http://www.w3.org/2001/XMLSchema" xmlns:response="http://support.mycompany.com/type/response" xmlns:type="http://support.mycompany.com/type" targetNamespace="http://support.mycompany.com/type/response" elementFormDefault="qualified"> <complexType name="DsOfferedRateDeleteRes"> <sequence> <element type="xsd:string" name="Status" minOccurs="0" maxOccurs="1"/> <element type="xsd:string" name="ReturnMsg" minOccurs="0" maxOccurs="1"/> <element type="xsd:long" name="ReturnCode" minOccurs="0" maxOccurs="1"/> </sequence> </complexType> <element type="response:DsOfferedRateDeleteRes" name="DsOfferedRateDeleteRes"/> </xsd:schema> </types> <message name="SecurityHeader"> <part name="Security" element="wsse:Security"/> </message> <message name="fault"> <part name="fault" element="tns:OperationFault"/> </message> <message name="DSCALLFAULT"> <part name="DSCALLFAULT" element="tns:DSCALLFAULT"/> </message> <message name="DSCALL"> <part name="request" element="tns:DSCALL"/> </message> <message name="DSCALLRESPONSE"> <part name="commandresult" element="tns:DSCALLRESPONSE"/> </message> <message name="DSCALLASYNC"> <part name="request" element="tns:DSCALLASYNC"/> </message> <message name="Admmoduleinfo"> <part name="request" element="tns:Admmoduleinfo"/> </message> <message name="AdmmoduleinfoRes"> <part name="response" element="tns:AdmmoduleinfoRes"/> </message> <message name="GetVersion"> <part name="request" element="tns:GetVersion"/> </message> <message name="GetVersionRes"> <part name="response" element="tns:GetVersionRes"/> </message> <message name="GetHealthInfo"> <part name="request" element="tns:GetHealthInfo"/> </message> <message name="GetHealthInfoRes"> <part name="response" element="tns:GetHealthInfoRes"/> </message> <message name="DsOfferedRateDeleteReq"> <part name="request" element="request:DsOfferedRateDeleteReq"/> </message> <message name="DsOfferedRateDeleteRes"> <part name="response" element="response:DsOfferedRateDeleteRes"/> </message> <portType name="FTFWSPORTTYPE"> <operation name="DSCALL"> <input message="tns:DSCALL" /> <output message="tns:DSCALLRESPONSE" /> <fault name="DSCALLFAULT" message="tns:DSCALLFAULT" /> </operation> <operation name="DSCALLASYNC"> <input message="tns:DSCALLASYNC" /> </operation> <operation name="admModuleInfo"> <input message="tns:Admmoduleinfo" /> <output message="tns:AdmmoduleinfoRes" /> <fault name="fault" message="tns:fault" /> </operation> <operation name="getversion"> <input message="tns:GetVersion" /> <output message="tns:GetVersionRes" /> <fault name="fault" message="tns:fault" /> </operation> <operation name="getHealthInfo"> <input message="tns:GetHealthInfo" /> <output message="tns:GetHealthInfoRes" /> <fault name="fault" message="tns:fault" /> </operation> <operation name="dsOfferedRateDelete"> <input message="tns:DsOfferedRateDeleteReq"/> <output message="tns:DsOfferedRateDeleteRes"/> <fault name="fault" message="tns:fault"/> </operation> </portType> <binding type="tns:FTFWSPORTTYPE" name="FTFWSBINDING"> <soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http" /> <operation name="DSCALL"> <soap:operation soapAction="http://support.mycompany.com/DSCALL" /> <input> <soap:body use="literal" /> </input> <output> <soap:body use="literal" /> </output> <fault name="DSCALLFAULT"> <soap:fault use="literal" name="DSCALLFAULT" /> </fault> </operation> <operation name="DSCALLASYNC"> <soap:operation soapAction="http://support.mycompany.com/DSCALLASYNC" /> <input> <soap:body use="literal" /> </input> </operation> <operation name="admModuleInfo"> <soap:operation soapAction="http://support.mycompany.com/admModuleInfo" /> <input> <soap:body use="literal" /> </input> <output> <soap:body use="literal" /> </output> <fault name="fault"> <soap:fault use="literal" name="fault" /> </fault> </operation> <operation name="getversion"> <soap:operation soapAction="http://support.mycompany.com/getversion" /> <input> <soap:body use="literal" /> </input> <output> <soap:body use="literal" /> </output> <fault name="fault"> <soap:fault use="literal" name="fault" /> </fault> </operation> <operation name="getHealthInfo"> <soap:operation soapAction="http://support.mycompany.com/getHealthInfo" /> <input> <soap:body use="literal" /> </input> <output> <soap:body use="literal" /> </output> <fault name="fault"> <soap:fault use="literal" name="fault" /> </fault> </operation> <operation name="dsOfferedRateDelete"> <soap:operation soapAction="http://support.mycompany.com/dsOfferedRateDelete" /> <input> <soap:header message="wsse:SecurityHeader" part="Security" use="literal"/> <soap:body use="literal" /> </input> <output> <soap:body use="literal" /> </output> <fault name="fault"> <soap:fault use="literal" name="fault" /> </fault> </operation> </binding> <service name="FTFWSSERVICE"> <port binding="tns:FTFWSBINDING" name="FTFWSPORT"> <soap:address location="FTFWS" /> </port> </service> </definitions>

回答 1 投票 0

自动生成使用 SOAP WSDL 的代码时出现“Delphi 错误”

我使用的是Delphi 10.3.2企业版。 我使用 Delphi 的 Importer WSDL 并收到错误: [dcc32 错误] ConsultaRUCDNI.pas(190): E2029 ';', ')' 或 '=' 预期但 ' <' found The WSDL is:

回答 1 投票 0

将 Swagger 转换为 WSDL

目标是创建一个可靠的流程或工具,可以将定义 REST API 的 Swagger 文件转换为适合 SOAP 服务的 WSDL 文件。此转换对于确保

回答 1 投票 0

使用 Salesforce Marketing Cloud (SFMC) 向动态受众发送电子邮件

CMS 中有一个系统,允许用户订阅带有各种术语标记的内容,可用的订阅方法是直接订阅特定产品(其中之一...

回答 1 投票 0

Magento SOAP V2 错误(catalogInventoryStockItemList)

我有一个包含一些名为“items_estoque”的产品 SKU 的数组,我从一个名为 dt 的特定数据表中填充了一个循环: Dim items_estoque(0) 作为字符串 对于 dt.R 中的每个 linha 作为 DataRow...

回答 1 投票 0

使用 Spring Boot 和 JAXB 的 SOAP 请求命名空间前缀和结构不匹配

我正在开发一个 Spring Boot 项目,我需要使用 SOAP Web 服务。我使用 wsdl2java 生成客户端代码。但是,我在生成的 SOAP 请求消息方面遇到了问题

回答 1 投票 0

Exchange Web 服务:取消订阅活动

我正在使用 Exchange 中的 EWS 来处理流通知。因此,我创建了一些订阅,但我忘记保存订阅 ID。 如果我尝试创建一个新的

回答 1 投票 0

将简单的 XML 字符串 (SOAP) 解析为 PHP 对象

我在 SOAP API 的响应中得到了下面的 XML 字符串,我想将其转换为对象或数组来使用,所以我尝试了两种方法,DOM 和 simplexml_load_string 但显示为空! 这里...

回答 1 投票 0

如何以编程方式针对 Salesforce Marketing Cloud 运行查询

我正在尝试自动从 Salesforce Marketing Cloud(以前称为 Exact Target)内的某些数据扩展中提取数据。 目前,查询 Stud 中正在运行查询...

回答 1 投票 0

如何使用 php SoapClient 发送肥皂请求?

我想使用肥皂和 php SoapClient 发送以下对象。 我想使用肥皂和 php SoapClient 发送以下对象。 <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:adin="http://3e.pl/ADInterface"> <soapenv:Header/> <soapenv:Body> <adin:queryData> <adin:ModelCRUDRequest> <adin:ModelCRUD> <adin:serviceType>ReadSalesOrder</adin:serviceType> <adin:TableName>XX_RV_Interface_Order</adin:TableName> <adin:RecordID>0</adin:RecordID> <adin:Filter></adin:Filter> <adin:Action>Read</adin:Action> <!--Optional:--> <adin:DataRow> <!--Zero or more repetitions:--> <adin:field type="integer" column="C_BPartner_ID" lval="" disp="" edit="" error="" errorVal=""> <adin:val>1000643</adin:val> </adin:field> </adin:DataRow> </adin:ModelCRUD> <adin:ADLoginRequest> <adin:user>username</adin:user> <adin:pass>password</adin:pass> <adin:lang>zh_CN</adin:lang> <adin:ClientID>1000000</adin:ClientID> <adin:RoleID>1000029</adin:RoleID> <adin:OrgID>1000000</adin:OrgID> <adin:WarehouseID>1000023</adin:WarehouseID> </adin:ADLoginRequest> </adin:ModelCRUDRequest> </adin:queryData> </soapenv:Body> </soapenv:Envelope> 我已经尝试过以下方法: $wsdl = 'http://example.com/ModelADService?wsdl'; $client = new SoapClient($wsdl); $result = $client->__soapCall('queryData', array( 'ModelCRUDRequest' => array( 'ModelCRUD' => array( 'serviceType' => 'ReadSalesOrder', 'TableName' => 'XX_RV_Interface_Order', 'RecordID' => 0, 'Filter' => '', 'Action' => 'Read', 'DataRow' => array( 'field' => array( 'type' => 'integer', 'column' => 'C_BPartner_ID', 'lval' => '', 'disp' => '', 'edit' => '', 'error' => '', 'errorVal' => '', 'val' => 1000643, ) ) ), 'ADLoginRequest' => array( 'user' => 'username', 'pass' => 'password', 'lang' => 'zh_CN', 'ClientID' => 1000000, 'RoleID' => 1000029, 'OrgID' => 1000000, 'WarehouseID' => 1000023, 'stage' => '', ), ), )); var_dump($result); 致命错误:未捕获的 SoapFault 异常:[soap:Client] 参数 ModelCRUDRequest 不存在! 之前必须初始化 SOAP Client $client = new SoapClient($wsdl); 您的问题不在于肥皂调用,而在于您发送或接收肥皂的数据。肥皂令人沮丧,因为您正在调用另一台服务器上的函数,并且该服务器上引发的任何错误都会在您的服务器上触发。所以如果他们的函数有致命错误,你的代码也会有致命错误。这就是为什么所有肥皂调用都必须在 try catch 内。 你能解决这个问题吗?我也有同样的问题

回答 3 投票 0

如何在不设置系统范围属性的情况下使用 HTTP 代理来处理 JAX-WS 请求?

我有一个应用程序需要向 Internet 上的系统发出 SOAP 客户端请求,因此它需要通过我们的 HTTP 代理。 可以通过设置系统范围的值(例如 system

回答 3 投票 0

由于身份验证错误,Php Soap 请求失败

我有点脱离了自己的舒适区。我正在尝试使用 PHP 创建 SOAP 请求,并且使用著名的 KBO API,以下是文档: https://economie.fgov.be/sites/default/files/Fi...

回答 3 投票 0

从 WCF SOAP 响应中删除命名空间前缀

我正在实现 WCF 服务来替换现有的 SOAP 服务。访问此服务的客户端无法更改(除了指向新服务器的配置)。 当响应方法时...

回答 2 投票 0

带有 NodeJS 的 SOAP - req.then 不是一个函数

我有一个旧应用程序正在经历升级过程(服务器硬件/操作系统、NodeJS + 模块、SQL 服务器等)。 该应用程序具有 SOAP 的 2FA。为此我使用了这个模块。 现在我有你...

回答 1 投票 0

从 .NET Core 将 XML 数据发布到 REST 端点

我有一个外部用户正在尝试通过 SOAP(XML 格式)将数据 POST 到我的端点。但是,我的代码是 .NET 6 REST APi。我将 XML 有效负载转换为一个类并设法生成...

回答 2 投票 0

如何确定 InclusiveNamespaces 元素的 PrefixList 属性的值

签署 SOAP 请求时,我应该如何确定需要在 InclusiveNamespaces 元素的 PrefixList 属性中列出哪些值? 我正在努力确保我所设定的...

回答 1 投票 0

R中使用XML查找所有函数时如何知道数据是否丢失?

我正在尝试从具有许多子项的 SOAP 文件(XML 格式)中提取数据。 XML_find_all 是一个从复杂结构中获取数据的好函数。然而错过了却无法归还...

回答 1 投票 0

.NET 7.0 和 SuiteTalk 无法通信

我有一个使用 TBA 通过 SuiteTalk 连接到 NetSuite 实例的应用程序。生成了消费者 ID 和令牌 ID,使用了“https://webservices.netsuite.com/wsdl/v2024_1_0/ne...

回答 1 投票 0

使用 SOAP 的 Servicestack 身份验证命名空间

我在使用 SOAPUI 向我的 ServiceStack API 发送身份验证请求时收到此错误。 期望来自命名空间“http://schemas.servicestack.net/types”的元素“Authenticate”..遇到...

回答 1 投票 0

Wildfly 的 JAXWS 实现似乎忽略了 bindingProvider 属性 com.sun.xml.ws.transport.https.client.SSLSocketFactory

我的环境是 Maven 项目和 Wildfly (8.2.1) 作为应用程序服务器。我需要的是使用 SOAP 将传入的 REST 调用连接到第三方服务器。我需要 SSL 客户端身份验证;

回答 5 投票 0

© www.soinside.com 2019 - 2024. All rights reserved.