Служба WSDL для простого XML вместо SOAP

Могу ли я иметь WSDL, который будет использовать только простые XML-данные, а не SOAP?

Если бы вы могли предоставить мне образец WSDL?

Ответ 1

Да, отправка простых XML-данных через HTTP может быть описана в WSDL. Вместо использования <soap:binding> при определении привязки операции вместо этого используйте <http:binding>. Например:

<definitions xmlns="http://schemas.xmlsoap.org/wsdl/" xmlns:http="http://schemas.xmlsoap.org/wsdl/http/" xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" targetNamespace="urn:example" xmlns:tns="urn:example">
    <types>
        <schema xmlns="http://www.w3.org/2001/XMLSchema" targetNamespace="urn:example">
        <element name="content">
            <complexType>
            <sequence>
                <element name="first" type="string"/>
                <element name="second" type="integer"/>
            </sequence>
            </complexType>
        </element>
        </schema>
    </types>

    <message name="id">
        <part name="id" type="xsd:string"/>
    </message>

    <message name="info">
        <part name="info" type="tns:content"/>
    </message>

    <portType name="widgetPortType">
        <operation name="getInfo">
        <input message="tns:id"/>
        <output message="tns:info"/>
        </operation>
    </portType>

    <binding name="binding" type="tns:widgetPortType">
        <http:binding verb="POST"/>
        <operation name="getInfo">
        <http:operation location="getInfo"/>
        <input>
            <mime:content type="application/x-www-form-urlencoded"/>
        </input>
        <output>
            <mime:mimeXml/>
        </output>
        </operation>
    </binding>

    <service name="widgetService">
        <port name="port" binding="tns:binding">
        <http:address location="http://www.example.org/"/>
        </port>
    </service>

</definitions>

Дополнительную информацию об использовании привязки HTTP можно найти здесь: http://docs.oracle.com/cd/E19182-01/821-0830/cnfg_http-bc-get-processing_r/index.html