
El siguiente elemento de un documento WSDL
es binding
. Antes comentábamos que existían distintos estilos de enlazado, que influían en cómo se debían crear los mensaje. En el elemento binding
es dónde debes indicar que el estilo de enlazado de tu documento sea RPC/encoded
.
Aunque es posible crear documentos WSDL
con varios elementos binding
, la mayoría contendrán solo uno (si no fuera así, sus atributos name
deberán ser distintos). En él, para cada una de las funciones (operation
) del portType
que acabamos de crear, se deberá indicar cómo se codifica y transmite la información.

Para el portType
anterior, podemos crear un elemento binding
como el siguiente:
<binding name="usuarioBinding" type="tns:usuarioPortType">
<soap:binding style="rpc" transport="http://schemas.xmlsoap.org/soap/http" />
<operation name="getUsuario">
<soap:operation soapAction="http://localhost/dwes/ut6/getUsuario.php?getUsuario" />
<input>
<soap:body use="encoded"
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
namespace="http://localhost/dwes/ut6" />
</input>
<output>
<soap:body use="encoded"
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
namespace="http://localhost/dwes/ut6" />
</output>
</operation>
</binding>
Fíjate que el atributo type
hace referencia al portType
creado anteriormente. El siguiente elemento indica el tipo de codificación (RPC
) y, mediante la URL
correspondiente, el protocolo de transporte a utilizar (HTTP
). Obviamente, deberás añadir el correspondiente espacio de nombres al elemento raíz:
<definitions
name="WSDLusuario"
targetNamespace="http://localhost/dwes/ut6"
xmlns:tns="http://localhost/dwes/ut6"
xmlns="http://schemas.xmlsoap.org/wsdl/"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
. . .
>
El elemento soap:operation
debe contener un atributo soapAction
con la URL
para esa función (operation
) en particular. Dentro de él habrá normalmente un elemento input
y otro output
(los mismos que en la operation
correspondiente). En ellos, mediante los atributos del elemento soap:body
, se indica el estilo concreto de enlazado (encoded
con su encondingStyle
correspondiente).