I called the built-in circuit . Thanks @Indoknight as well. The following is the working WSDL protocol.
Note1: the prefix xsd and targetNamespace are in the scheme that is used inside the wsdl type
Note2: nilable = "true" applies to the type used in the response message
Note 3. If you get the following exception, make sure the soapAction exactly the same in the contract WSDL and wsdl generated from the WCF service. Some tools used to generate utility code can modify the SOAP action of their own free will.
Faultcod: a: ActionNotSupported
Faultstring: a message with the action " http://www.xmlns.mycompany.com/GAME/wsdl/AssociateIntf/1.4/getAllVicePresidentsRequest 'could not be processed at the receiver due to a ContractFilter mismatch in the EndpointDispatcher. This may be due to a contract mismatch (actions mismatch between the sender and the recipient) or binding / security mismatch between the sender and the recipient Make sure that the sender and the recipient have the same contract and the same binding (including security requirements, such as message, transport, no)
SOAP Action - WSDL contract
<soap:operation soapAction="http://www.xmlns.mycompany.com/GAME/wsdl/AssociateIntf/1.4/getAllVicePresidentsRequest"
SOAP Action - Created by WSDL
<soap:operation soapAction="http://www.xmlns.mycompany.com/GAME/service/Associate/1.1/IGAMEAssociateIntf/getAllVicePresidents"
WSDL contract
<?xml version="1.0" encoding="UTF-8"?> <definitions name="GAMEAssociate" targetNamespace="http://www.xmlns.mycompany.com/GAME/service/Associate/1.1/" xmlns:tns="http://www.xmlns.mycompany.com/GAME/service/Associate/1.1/" xmlns="http://schemas.xmlsoap.org/wsdl/" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:soap12="http://schemas.xmlsoap.org/wsdl/soap12/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:wsp="http://www.w3.org/ns/ws-policy" > <types> <xsd:schema targetNamespace="http://www.xmlns.mycompany.com/GAME/service/Associate/1.1/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" > <xsd:element name="myData"> <xsd:complexType /> </xsd:element> <xsd:element name="myDataResponse" nillable="true"> <xsd:complexType /> </xsd:element> </xsd:schema> </types> <message name="getAllVicePresidentsRequest"> <part element="tns:myData" name="getAllVicePresidentsRequest"/> </message> <message name="getAllVicePresidentsResponse"> <part element="tns:myDataResponse" name="getAllVicePresidentsResponse"/> </message> <portType name="GAMEAssociateIntf"> <operation name="getAllVicePresidents"> <input message="tns:getAllVicePresidentsRequest"/> <output message="tns:getAllVicePresidentsResponse"/> </operation> </portType> <binding name="GAMEAssociateIntfBinding" type="tns:GAMEAssociateIntf"> <soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/> <operation name="getAllVicePresidents"> <soap:operation soapAction="http://www.xmlns.mycompany.com/GAME/wsdl/AssociateIntf/1.4/getAllVicePresidentsRequest" style="document"/> <input> <soap:body use="literal"/> </input> <output> <soap:body use="literal"/> </output> </operation> </binding> <service name="GAMEAssociate"> <port binding="tns:GAMEAssociateIntfBinding" name="GAMEAssociateSOAP"> <soap:address location="http://localhost:8014/associateservice/GAMEAssociate.svc"/> </port> </service> </definitions>
Request
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns="http://www.xmlns.mycompany.com/GAME/service/Associate/1.1/"> <soapenv:Header/> <soapenv:Body> <ns:myData/> </soapenv:Body> </soapenv:Envelope>
answer
<s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/"> <s:Body xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"> <myDataResponse xsi:nil="true" xmlns="http://www.xmlns.mycompany.com/GAME/service/Associate/1.1/"/> </s:Body> </s:Envelope>
Lijo
source share