Servicios Web para Java EE 5 en Glassfish (2)

03:23PM jun 02, 2007 en categoria Java por Enrique Rodriguez Lasterra

Etiquetas:

En la reciente OpenJavaDay de Madrid, y en particular, en la mesa redonda que pude compartir con mis freak-friends, se hablo mucho sobre los lenguajes dinámicos y sobre el JSR-175 (las famosas @) en JavaEE5.

Hemos visto como este nuevo JSR ha aportado mucha sencillez al desarrollo de aplicaciones Java Enterprise. Esta "copia" del antiguo XDoclet ha mejorado mucho por una razón, el código que se genera detrás de una anotación JSR-175 no se ve, y por tanto no se puede modificar.

Esto soluciona el problema que existía antes cuando a través de una anotación, generábamos código que muchas veces, por una u otra razón terminábamos modificando, con los consecuentes problemas que esto podía generar en el futuro al presentarse un cambio.

Vamos a adentrarnos en el código del ejemplo anterior del servicio Web, para ver que realmente, un servicio Web JavaEE5 no genera ni una línea de código, y es Glassfish quien se encarga de ello.

En la primera imagen podemos ver que no existe ningún archivo generado, ni .java, ni .class en todo el proyecto.

Vista de archivos del proyecto

Aunque para mí lo más sorprendente es que tampoco existe ningún tipo de información relativa al servicio Web en el descriptor de la aplicación, el archivo web.xml

Descriptor de aplicación Web con Servicios Web JavaEE5

La primera vez que me di cuenta de esto, me extrañe muchísimo, ya que por ejemplo, esto oculta la dirección del Servicio Web. Pensé entonces que en el descriptor específico de Glassfish iba a encontrar algún dato, pero no fue así

Descriptor de aplicación Web con Servicios Web JavaEE5 específico de Glassfish

Tuve que ir a la consola de administración para ver la dirección del servicio y como en algún paso interno se había generado mucha información en tres archivos de configuración:

Propiedades de un servicio Web en el panel de Glassfish v2 Fichero webservices.xml de glassfish v2 Servlet del servicio Web en el fichero web.xml de glassfish v2 Fichero sun-web.xml de glassfish v2

De esta generación de código y configuracón habrá gente a favor y en contra. Bajo mi punto de vista es una avance hacía la sencillez, que es muy positivo. También veo que aunque los IDEs cada vez nos ayudan más, en este caso lo que nos ayuda es la plataforma, que es la que se encarga de generar el código. Un aplauso para el JSR-175.

Web services for Java EE 5 in Glassfish (2)