miércoles, 8 de agosto de 2018

WADL: Que es y como generarlo


Este es el primer post tras el paso de Java EE a Jakarta EE en el nombre del blog. Por que como supongo que sabreis ya no es más Java EE ni depende de Oracle, sino que ahora es Jakarta EE, depende de la fundación Eclipse y han cambiado hasta el log. 

Como supongo que ya sabreis, cuando realizamos un servicio web tradicional con SOAP, a la vez debemos generar un contrato que indique como debemos utilizar el servicio. Este contrato es el WSDL. Y tal como habeis visto en los múltiples ejemplos de servicios web con REST que hemos realizado aquí, en principio nunca hemos hecho referencia de algo parecido, ni nos ha hecho falta para poder utilizarlos. 

Pero en los servicios REST también existe la posibilidad de crear este contrato. Lo podemos hacer con WSDL 2.0, y serán igual de enrevesados que los de SOAP, o bien podemos hacerlo con WADL. WADL, acrónimo de Web Application Description Language, es una forma más sencilla de generar este contrato en un formato XML, aunque aún no se encuentra estandarizado. Y en este post explicaremos como generarlo con Jersey.  

Basandonos en el ejemplo del post anterior, podemos ver como al arrancar el servicio podemos acceder al WADL que se ha generado automáticamente en la siguiente url: http://localhost:8080/JerseyExample/rest/application.wadl


Este WADL es generado en base a las anotaciones de Jax-RS y su estandar JSR-311. En base a esto, como Spring no implementa dicho estandar, no tiene una manera para generar automáticamente este WADL. Mirando por la web se podría hacer incluyendo implementaciones de dicho estandar en la aplicación Spring, pero no me parece la solución más optima.

No hay comentarios:

Publicar un comentario