jueves, 9 de mayo de 2013

Creando un servicio de acceso a datos en 3 minutos

WSO2 como plataforma tiene un conjunto de herramientas bastante cool para el desarrollo rápido de soluciones. Cada herramienta tiene un conjunto de plugins asociados y uno de estos plugins para la creación de servicios de acceso a datos es bastante bueno. Lo pueden encontrar tanto en el Application Server como en el Data Service Server.

Veamos como en 3 minutos podemos crear un servicio de acceso a datos con las operación CRUD normales sobre una tabla de una base de datos relacional en postgresql.
Si no quieren descargar la herramienta bien pueden usar el Stratos Live ubicado en http://wso2.com/cloud/stratoslive/ lo que no se  si tenga el driver para postgresql, puede ser que trabaje solo con mysql.

Luego de autenticarse en la herramienta seleccionada se va a la sección Configure/Data Sources tal y como muestra la siguiente imagen:


Luego se le da en Add Data Source y se muestra lo siguiente que debe ser llenado en función de la BD done esté ubicada.
En este caso mi servidor de postgresql está local y la BD que usaré se llama BDIterar, tengan en cuenta que la herramienta debe tener el driver de postgresql ubicado en la carpeta:
[Herramienta] \repository\components\lib\

Pueden probar la conexión dándole al botón Test Connection.
Luego guardan esta configuración y les aparecerá así:
Ahora se debe crear un servicio de acceso a dato con las operaciones CRUD básicas sobre la BD configurada en la conexión. Para eso haremos lo siguiente:
Van a  Manage > Services          > Add   > Data Service  > Generate y verán lo siguiente:
Cuando den clic en SELECT les saldrá el data source que crearon en el paso anterior. Y deben especificar el nombre de la BD. Como se ve en la siguiente imagen.
Le dan next y les sale los schemas de esa BD.
Le dan next y se muestran las tablas existentes:
Seleccionamos  solo “datos” y seguimos, le dan next.
Aquí le pueden dar next también y luego finish.
Se les debe haber creado un servicio que se les muestra a continuación:

Si lo quieren probar le dan clic a la opción “Try this service”
Se les muestra lo siguiente:


Pueden ver todas las operaciones creadas, si usamos la operación
select_all_datos_operation veremos lo siguiente.

Pueden probar las otras operaciones para que vean cómo funciona.

7 comentarios:

  1. Hola, si quisiese exponer los datos, por ejemplo de una tabla de Oracle, que driver / URL tendría que poner en la pantalla de NEW DATA SOURCE?. Gracias.

    ResponderEliminar
  2. Hola.
    Para Oracle debes usar este driver: ojdbc6.jar y la clase del driver es oracle.jdbc.driver.OracleDriver

    ResponderEliminar
  3. y si quiero hacer un servicio de datos para usar una o varias funciones de mi BD posgretSQL

    ResponderEliminar
  4. Tienes la variante de crear un servicio con las queries y operaciones que desees, en vez de seleccionar la opción de "Generate" usa la de Create y el procedimiento basicamente es el de crear un datasource, crear una query invocando a la función que quieres y una operación que se vincula con esa query y listo. Si sigues buscando tengo otras entradas con este escenario. Saludos y gracias por dejar un comentario :-D

    ResponderEliminar
  5. Buen dia, soy nuevo en este mundo de SOA, hay algun tutorial en el que pueda guiarme para crear y desplegar un web service desde cero en WSO2, eso implica desde la base de datos y demás partes, les estaría muy agradecidos

    ResponderEliminar
  6. Hola Jorge Luis, este tuto te sirve para toda la parte de crear y desplegar un WS desde cero en WSO2. Para la parte de BD te puedes buscar un tuto online en el gestor de tu preferencia. Si necesitas algún detalle específico de la parte de wso2 no dudes en volver a escribir. Saludos.

    ResponderEliminar
  7. Existe algun demo ya hecho del producto ?? o una maquina virtual ue me permita verificar la información y productos en funcionamient, la verda instale el ESB, Application Manager, BRS, entre otros y no puedo integrar los servicios, quisiera tener un conocimiento de esta herramienta, o al menos validar su funcionalidad en una o dos capaz. Muy gentil

    ResponderEliminar