Tecnologías de la Sociedad de la Información

Servicios y Tecnologías que aportan valor añadido a la Sociedad de la Información

Artículos publicados por Dani

Hola de nuevo a todos. Proseguimos con la serie de tutoriales sobre Web Services, y en esta ocasión veremos como crear un web service con JAXWS a partir de un POJO. En nuestro ejemplo haremos un WS que simulará una aplicación de servicio meteorológico. Permitirá consultar la previsión del tiempo de una ciudad para los próximos cinco días, así como el tiempo para una fecha en concreto. Omitiremos la parte de consulta a base de datos, para centrarnos en la parte que nos interesa, que es el propio web service. Para el desarrollo de nuestro WS utilizaremos Eclipse y la versión 2.1.2 de JAXWS.

Los pasos que realizaremos para crear el WS serán:

  • Creación de la clase java
  • Ejecución del wsgen
  • Modificación del fichero web.xml
  • Creación del fichero sun-jaxws.xml
  • Creación del fichero de despliegue de la aplicación (war)

continua leyendo…

Volvemos de nuevo con los tutoriales sobre Web Services, y empezamos a centrarnos en JAXWS.

JAXWS es el API java para el desarrollo de WS XML, forma parte de la distribución J2EE de Sun y al igual que otras APIs utiliza las anotaciones para el despliegue de las aplicaciones.

continua leyendo…

Los Web Services fueron pensados en un inicio para que no mantuvieran estados de las sesiones. Es lógico que si lo que estamos ofreciendo es un servicio, no sea necesario que se mantenga información de las consultas anteriores. Si por ejemplo tenemos un WS que sirve información de la bolsa, en cada consulta se mandará la información que se ha solicitado, pero no necesitamos saber cosas acerca de las consultas anteriores. El servicio es una consulta, y la respuesta es independiente de las anteriores.

Pero como siempre, las cosas evolucionan, y siempre hay gente que necesita darle una vuelta de tuerca a todo. Así que quizás estéis creando un WS y necesitáis que se guarde el estado de cada petición. De hecho a nosotros nos pasó. Teníamos que montar una capa intermedia para que conectara y consultara con un gestor documental, pero además una de las necesidades que había es que se mantuviese abierta la conexión durante un tiempo determinado. Son estas cosas que te vienen dadas, y que no otra que buscarte la vida para ver como lo implementas. continua leyendo…

En este nuevo tutorial vamos a ver como crear un Web Service a partir del wsdl con Axis2. El wsdl es un xml schema en el que se describe el WS, los métodos que son accesibles, y el formato de los mensajes SOAP que acepta. Tienes más información aquí.

Para crear un WS, siempre deberíamos empezar escribiendo el wsdl, para pasar después a picar el código de la lógica de negocio que estará en la clase java que recibirá los datos en el WS. De esta forma tendremos controlado los mensajes SOAP que se envían y reciben en nuestro WS, y nos evitaremos problemas a posteriori.

En nuestro ejemplo, vamos a hacer un webservice que permita realizar búsquedas de viajes. No vamos a tener conexión con ninguna base de datos, así que simularemos esta conexión mediante otra clase.

Los pasos que vamos a seguir para crear el WS serán los siguientes:

  • Escribir el wsdl.
  • Utilizar el script wsdl2java de Axis2 para crear las clases y el services.xml del WS a partir del wsdl.
  • Escribir la lógica de negocio.

continua leyendo…

En esta nueva entrada de nuestros tutoriales sobre Web Services, vamos a ver cómo crear un WS con Axis2 a partir de una clase Java que hemos creado previamente (POJO).

Para desplegar un WS con Axis2 necesitamos las librerías de Axis2, crear el fichero wsdl que define la estructura de los mensajes SOAP que aceptará el WS, y el fichero services.xml que le indicará a Axis2 las clases y métodos que serán accesibles desde el mismo. Las librerías ya las tenemos (suponemos que ya has instalado Axis2 en tu equipo, y si no es así puedes visitar este tutorial en el que explicamos los pasos para realizarlo), el services.xml tendremos que crearlo a mano, y el wsdl lo generaremos a través de un script que trae Axis2. Pero vayamos paso a paso:

continua leyendo…