Toda la información de producto en wiki.bizagi.com aplica para Bizagi BPM Suite 9.1.X.
Para las nuevas versiones de Bizagi BPM Suite (10.X y superior) visite la Guía de Usuario.
 

Ejemplo Usando el Ayudante para Invocar Servicios Web

De

<keywords content="keywords">webservice, webservices, web services, webservice complejo, web service complejo, web service con tipos de dato complejo, XML, XSD, XSLT, interfaz, interfaces, WebService, Webservice, Web Service, WebServices, Webservices, Web Services, mapeo de parametros, servicio web, Servicio Web</keywords> 


Contenido

Ejemplo Usando el Asistente para Invocar Servicios Web

Bizagi ofrece un módulo que permite la ágil configuración e implementación de una interfaz que se comunique con aplicaciones externas. Este módulo ofrece un o más métodos públicos, los cuales se pueden invocar por usuarios autorizados de estas aplicaciones o sistemas externos. Esta información se puede transformar o modificar de tal forma que ambos sistemas (Bizagi y el sistema externo) se puedan entender e intercambiar información.La definición de interfaces se realiza en el sexto paso del Asistente de Proceso, donde se configura la interacción con otros sistemas utilizando servicios web.

El ejemplo a continuación muestra la configuración de una interfaz que verifica si el cliente potencial de un banco está incluído en alguna lista negra. La verificación se realiza en un sistema externo que ya existe previamente en el banco.

El primer paso para configurar los parámetros para invocar el Servicio Web desde Bizagi es seleccionar la Tarea de Servicio llamada "Verify in Black List" para abrir el asistente de interfaces.






Nota: Para esta configuración desde el asistente de interfaces, primero seleccionamos SOAP como el tipo de servicio:




Seguidamente en el asistente, escriba la URL del servicio web y haga clic en Ir a URL. Se muestran todos los métodos disponibles del servicio web con sus respectivos parámetros de entrada y salida. Seleccione el método que se va a usar.

Una vez el método ha sido seleccionado se asigna el Nombre Interfaz con el mismo nombre del método. Si se cambia de método igualmente se cambia el nombre (es posible escribir un nombre diferente del que se propone después de seleccionar el método). El Sistema también seleccionado por defecto. Si se desea, se puede seleccionar otro Sistema existente o digitar un nombre diferente para crear uno nuevo. Cuando haya terminado haga clic en el botón Siguiente.



El segundo paso consiste en mapear los parámetros de entrada. En la vista por defecto, se muestra una tabla con el modelo de datos de Bizagi a la izquierda y a la derecha se encuentra una tabla con la estructura del mensaje que espera el servicio web.



Para que Bizagi sea capaz de mostrar esta estructura es necesario que el servicio web haya descrito completamente los tipos de datos, usados en los mensajes de solicitud y respuesta, en su WSDL. De esta forma es posible relacionar datos de Bizagi con datos del servicio web sin necesidad de escribir una transformación XSL. Un ejemplo de un servicio web puede similar es el que se usa en este ejemplo. Cuando se consulta desde un navegador se ve así:



Nota: Si el servicio web utilizado para una interfaz no tiene la descripción de los tipos de datos, lea aquí como configurar una interfaz usando las opciones Avanzadas.


Al utilizar el asistente es posible hacer relaciones uno-a-uno. Asigne a los parámetros de tipos de datos simples del servicio web un atributo con el mismo tipo de dato en Bizagi. Como se puede ver en la imagen, el servicio web necesita recibir dos cadenas de caracteres, DocumentNumber (Numero de Documento) y DocumentType (Tipo de Documento). Estos parámetros se emparejaran con DocumentNumber y DocumentType, realice esto haciendo clic en la flecha al lado de DocumentNumber en la tabla Bizagi Data, y arrastre la línea que aparece hasta la flecha al lado del parámetro correspondiente en el servicio web.



Igualmente se hace para DocumentType, solo que el atributo con el cual se va a mapear es Code (Codigo) perteneciente a DocuementType. Luego de esto, haga clic en el botón Siguiente.



La siguiente ventana es muy parecida, pero es utilizada para mapear la respuesta del servicio web con atributos en Bizagi con el propósito de guardar la información para un caso. Por esta razón, ahora la tabla del servicio web está a la izquierda y la tabla con los datos de Bizagi a la derecha.



En ambas ventanas (ésta y la anterior), hay una opción para maximizar la ventana en la esquina superior derecha. Al maximizar esta ventana, es posible utilizar funciones y opciones especiales para el mapeo de los datos, al igual que las posibilidades de los nuevos botones, como: Mapear todo, Desmapear todo, Deshacer and Rehacer.



La respuesta del servicio web es mapeada a datos de Bizagi de la misma forma que se hizo antes, haciendo clic en una flecha de la izquierda y arrastrando la línea a una flecha en la derecha. Aquí se muestra el mapeo de el parámetro Booleano Exist (Existe) con el atributo Booleano BlackListReported (Reportado en Lista Negra); DocumentNumber con DocumentNumber; DocumentType con Code perteneciente a DocumentType; y ListCode (Código de Lista) con Code perteneciente a ListRejectionsApplicant (Lista de Rechazos del Solicitante), el cual es un atributo de la Colección ApplicantsRejections (Rechazos del Solicitante).



Haga clic en el mismo botón, utilizado para maximizar la ventana, para restaurarla a su tamaño normal, y haga clic en Siguiente para continuar con la configuración de la interfaz.



En el último paso se manejan los errores de la interfaz. Aquí, asumiendo que la Tarea de Servicio no tiene un Evento de Error adjunto, como acción en Error Invocando Servicio Web seleccione Lanzar Excepción. Esto significa que si hay un error de comunicación con el servicio web, u ocurre algún otro error no controlado, el error es reportado y el proceso se detiene hasta que pueda resolverlo el administrador.



La sección Errores de respuesta se utiliza cuando el servicio web devuelve errores controlados. En XPath de Respuesta escriba el XPath completo del elemento donde va a buscarse el valor de error en la respuesta del servicio web.



Luego haga clic en Agregar validación; seleccione el Operador (diferente de o igual a) y el Valor que indica error. Para esta validacion también seleccione una Accion, asi como anteriormente; y finalmente el Mensaje de error, el cual también puede ser un parámetro de la respuesta del servicio web.



Guarde esta configuración haciendo clic en Finalizar.

Configuración de Servicio Web (Avanzada)

Existen algunos escenarios en los cuales las opciones básicas del asistente no se pueden usar:

  • El servicio web no tiene una definición completa de los tipos de datos utilizados en sus mensajes en el WSDL.
  • Alguno de los mensajes del servicio web, el de solicitud o el de respuesta, requieren una transformación donde se deben usar elementos como: if, choose, call-template, param o attribute; o si necesita cualquier función XSLT.
  • La respuesta del servicio web va a hacer utilizada para actualizar información en una Colección en Bizagi.
  • El servicio web se usa para generar un archivo PDF.

En cualquiera de los anteriores casos se recomienda usar las Opciones avanzadas para Invocar un Servicio Web.


Artículos Relacionados


<comments />