Una vez que hayas creado un servicio web, puedes programar el correspondiente cliente y comenzar a utilizarlo. Como el servicio lo has creado tú, sabrás cómo acceder a él: en qué URL
está accesible, qué parámetros recibe, cuál es la funcionalidad que aporta, y qué valores devuelve. Sin embargo, si lo que quieres es que el servicio web sea accesible a aplicaciones desarrolladas por otros programadores, deberás indicarles cómo usarlo, es decir, crear un documento WSDL
que describa el servicio.
WSDL
es un lenguaje basado en XML
que utiliza unas reglas determinadas para generar el documento de descripción de un servicio web. Una vez generado, ese documento se suele poner a disposición de los posibles usuarios del servicio (normalmente se accede al documento WSDL
añadiendo "?wsdl"
a la URL
del servicio).
El espacio de nombres de un documento WSDL
es: http://schemas.xmlsoap.org/wsdl/
, aunque en un documento WSDL
se suelen utilizar también otros espacios de nombres. La estructura de un documento WSDL
es la siguiente:
<definitions
name="…"
targetNamespace="http://…"
xmlns:tns="http://…"
xmlns="http://schemas.xmlsoap.org/wsdl/"
…
>
<types>
…
</types>
<message>
…
</message>
<portType>
…
</portType>
<binding>
…
</binding>
<service>
…
</service>
</definitions>
El objetivo de cada una de las secciones del documento es el siguiente:
types
. Incluye las definiciones de los tipos de datos que se usan en el servicio.message
. Define conjuntos de datos, como la lista de parámetros que recibe una función o los valores que devuelve.portType
. CadaportType
es un grupo de funciones que implementa el servicio web. Cada función se define dentro de suportType
como una operación (operation
).binding
. Define cómo va a transmitirse la información de cadaportType
.service
. Contiene una lista de elementos de tipoport
. Cadaport
indica dónde (en quéURL
) se puede acceder al servicio web.Cristcost (Dominio público)