Top Qs
Línea de tiempo
Chat
Contexto
Web Application Description Language
De Wikipedia, la enciclopedia libre
Remove ads
Web Application Description Language (WADL) es una descripción XML legible por máquina de aplicaciones web basadas en HTTP (normalmente servicios web REST).[1] WADL modela los recursos proporcionados por un servicio y las relaciones entre ellos.[1] WADL está diseñado para simplificar la reutilización de servicios web basados en la arquitectura HTTP existente de la web.[1][2] Es independiente de la plataforma y del lenguaje y tiene como objetivo promover la reutilización de aplicaciones más allá del uso básico en un navegador web.[1]
WADL fue presentado al World Wide Web Consortium por Sun Microsystems el 31 de agosto de 2009,[1] pero el consorcio no tiene planes actualmente para estandarizarlo.[2] WADL es el equivalente de REST al Web Services Description Language (WSDL) de SOAP, que también puede ser usado para describir servicios web REST.[3]
Remove ads
Formato
El servicio es descrito mediante un conjunto de elementos resource (recursos). Cada recurso contiene elementos param para describir las entradas y elementos method que describen la solicitud, request, y respuesta, response, de un recurso. El elemento request especifica cómo representar la entrada, qué tipos son requeridos y las cabeceras HTTP específicas que son requeridas. El elemento response describe la representación de la respuesta del servicio, así como cualquier información de fallos, para hacer frente a errores.
Remove ads
Ejemplo
Resumir
Contexto
El siguiente listado muestra un ejemplo de una descripción WADL para la aplicación Yahoo News Search.
<application xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://wadl.dev.java.net/2009/02 wadl.xsd"
xmlns:tns="urn:yahoo:yn"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:yn="urn:yahoo:yn"
xmlns:ya="urn:yahoo:api"
xmlns="http://wadl.dev.java.net/2009/02">
<grammars>
<include
href="NewsSearchResponse.xsd"/>
<include
href="Error.xsd"/>
</grammars>
<resources base="http://api.search.yahoo.com/NewsSearchService/V1/">
<resource path="newsSearch">
<method name="GET" id="search">
<request>
<param name="appid" type="xsd:string"
style="query" required="true"/>
<param name="query" type="xsd:string"
style="query" required="true"/>
<param name="type" style="query" default="all">
<option value="all"/>
<option value="any"/>
<option value="phrase"/>
</param>
<param name="results" style="query" type="xsd:int" default="10"/>
<param name="start" style="query" type="xsd:int" default="1"/>
<param name="sort" style="query" default="rank">
<option value="rank"/>
<option value="date"/>
</param>
<param name="language" style="query" type="xsd:string"/>
</request>
<response status="200">
<representation mediaType="application/xml"
element="yn:ResultSet"/>
</response>
<response status="400">
<representation mediaType="application/xml"
element="ya:Error"/>
</response>
</method>
</resource>
</resources>
</application>
Remove ads
Generar WADL o generar código a partir de WADL
Java
Existen diversas herramientas para generar código Java a partir de un WADL existente:[4][5]
- Apache CXF
- Java API for RESTful Web Services, y su implementación de referencia, Jersey
Referencias
Enlaces externos
Wikiwand - on
Seamless Wikipedia browsing. On steroids.
Remove ads