Como decíamos ayer… bueno, no ayer exactamente,
pero en nuestra publicación anterior ya vimos cómo elaborar nuestro
primer proceso de BPMN 2.0 y guardar
los cambios de la configuración respectiva. Vamos ahora a revisar los pasos
necesarios para desplegar y probar dicho proceso en la plataforma
BPM de Camunda.
Así mismo revisaremos los detalles necesarios
para configurar los permisos de usuarios y la funcionalidad que pueden ejecutar
sobre el proceso desplegado, todo esto haciendo uso de la plataforma de
administración de Camunda. Tampoco
podemos olvidar que daremos una mirada a las instancias en ejecución de nuestro
proceso mediante la herramienta Cockpit.
Entonces, sin más preámbulos, manos a las
sobras…
Construir la aplicación Web con Maven
Para ello debemos tener cargado muestro
proyecto Java Maven en la IDE de eclipse.
Vaya al explorador, ubique el archivo pom.xml, haga click con el botón derecho
del ratón sobre ese archivo, en el menú contextual seleccione la opción Run As / Maven Install.
Al finalizar esta tarea se debe generar un
archivo .war de la aplicación, bpm_demo-0.1.war, en el directorio target del proyecto. Pulse f5 para recargar o refrescar el entorno.
Desplegar en Apache Tomcat
Sí aún no tiene el Tomcat ejecutándose, la plataforma de Camunda BPM, vaya al directorio de instalación, CAMUNDA_HOME, del
servidor, y ejecute el archivo start-camunda.sh o start-camunda.bat según
corresponda a su ambiente operativo.
Esto debe generar la carpeta descomprimida del recurso, .war, en el directorio webapps y en el log del servidor debe generar un mensaje indicando que el despliegue fue exitoso.
21-Nov-2016 16:18:43.218 INFO [localhost-startStop-2] org.apache.catalina.startup.HostConfig.deployWAR Despliegue del archivo /home/pigbar/Developer/Servers/camunda-bpm-tomcat-7.5.0/server/apache-tomcat-8.0.24/webapps/bpm_demo-0.1.war de la aplicación web 21-Nov-2016 16:18:43.858 INFO [localhost-startStop-2] org.apache.jasper.servlet.TldScanner.scanJars Al menos un JAR, que se ha explorado buscando TLDs, aún no contenía TLDs. Activar historial de depuración para este historiador para una completa lista de los JARs que fueron explorados y de los que nos se halló TLDs. Saltarse JARs no necesarios durante la exploración puede dar lugar a una mejora de tiempo significativa en el arranque y compilación de JSP . 21-Nov-2016 16:18:43.858 INFO [localhost-startStop-2] org.camunda.commons.logging.BaseLogger.logInfo ENGINE-07015 Detected @ProcessApplication class 'pigbar.bpm.apps.bpm_demo.BPMDemoApp' 21-Nov-2016 16:18:43.859 INFO [localhost-startStop-2] org.camunda.commons.logging.BaseLogger.logInfo ENGINE-08026 No processes.xml file found in process application 'BPM Demo' 21-Nov-2016 16:18:43.860 INFO [localhost-startStop-2] org.camunda.commons.logging.BaseLogger.logInfo SPIN-01010 Discovered Spin data format provider: org.camunda.spin.impl.json.jackson.format.JacksonJsonDataFormatProvider[name = application/json] 21-Nov-2016 16:18:43.860 INFO [localhost-startStop-2] org.camunda.commons.logging.BaseLogger.logInfo SPIN-01010 Discovered Spin data format provider: org.camunda.spin.impl.xml.dom.format.DomXmlDataFormatProvider[name = application/xml] 21-Nov-2016 16:18:43.860 INFO [localhost-startStop-2] org.camunda.commons.logging.BaseLogger.logInfo SPIN-01009 Discovered Spin data format: org.camunda.spin.impl.xml.dom.format.DomXmlDataFormat[name = application/xml] 21-Nov-2016 16:18:43.860 INFO [localhost-startStop-2] org.camunda.commons.logging.BaseLogger.logInfo SPIN-01009 Discovered Spin data format: org.camunda.spin.impl.json.jackson.format.JacksonJsonDataFormat[name = application/json] 21-Nov-2016 16:18:43.861 INFO [localhost-startStop-2] org.camunda.commons.logging.BaseLogger.logInfo ENGINE-08050 Process application BPM Demo successfully deployed
Verificar el despliegue con la herramienta Cockpit
Vayamos a nuestro explorador y abramos la
aplicación Cockpit, podemos hacerlo mediante la url:
Ingresamos las credenciales adecuadas cuando se
nos solicite:
Usuario: demo
Clave: demo
El tablero o Dashboard nos debe indicar que se ha añadido una nueva definición
de proceso, process definition, y
podemos observarla haciendo click en el menú processes de la herramienta.
Genial!! En caso de problemas deberíamos
iniciar por revisar los mensajes del log.
Iniciar una Instancia de Proceso
Cierre la sesión en el Cockpit. Vayamos a la aplicación TaskList de Camunda BPM, http://localhost:8080/camunda/app/tasklist, Ingresamos las credenciales
adecuadas cuando se nos solicite:
Usuario: demo
Clave: demo
Y hacemos click en la opción Start process.
Donde podemos seleccionar nuestro proceso
Solicitud de Préstamo, y definir o establecer las variables que consideremos
pertinentes para el inicio del proceso, ya sea mediante un formulario
personalizado o mediante la pantalla de inicio por omisión.
En nuestro ejemplo no se especificó ninguna
variable para el proceso simple, ni se declaró ninguna pantalla de inicio de
proceso, por lo que podemos dar inicio a la instancia haciendo click en el
botón start.
La aplicación TaskList nos debería informar que el proceso fue iniciado con
éxito.
Cierre la sesión en el TaskList. Sí volvemos a la herramienta Cockpit, esta nos debe indicar ahora que hay una nueva instancia de
proceso para “Solicitud de Préstamo”
en ejecución.
Configurar las Autorizaciones de Inicio de Proceso
Debe recordar que en nuestra definición de
proceso inicial habíamos dicho que la Tarea
Humana “Solicitar Préstamo”
estuviese asignada al usuario John. Por lo que es necesario autorizar a este
usuario a que pueda realizar tareas sobre el proceso.
Cierre la sesión en el Cockpit. Vayamos a la herramienta Camunda Admin, http://localhost:8080/camunda/app/admin/default/#/login, Ingresamos las credenciales
adecuadas cuando se nos solicite:
Usuario: demo
Clave: demo
Y hacemos click el menú Authorizations, donde debemos seleccionar la opción Process Definition y pulsar el botón o
enlace créate new authorization.
Indique que el usuario es “john”, con los
permisos igual a “ALL”, y sobre el Resource ID indique el valor “Process_Solicitud_Prestamo”.
Cuando esté listo guarde los cambios.
Agregue una nueva autorización en la opción Process Instance.
Indique que el usuario es “john”, con los permisos
igual a “CREATE”, y sobre el Resource ID indique el valor “*”.
Trabajar en la Tarea
Cierre la sesión en el Admin. Vayamos al TaskList
e inicie sesión con las credenciales john/john.
Deberíamos ser capaces de poder ver las tareas asignadas a John. Seleccione la
Tarea disponible y luego haga click en la pestaña diagrama, Diagram. Esto muestra el diagrama del
proceso con la tarea resaltada lista para trabajar en ella.
Podemos reclamar o tomar una tarea, completarla
estableciendo sus variables, etc.
Para completar una tarea, vaya a la pestaña
Formulario, Form, la cual nos
mostrará el formulario que hayamos definido para esta tarea o, como es nuestro
caso, nos mostrará un formulario por omisión que nos permitirá manipular
variables y pulsar el botón Complete
para culminar la tarea.
Como hemos podido apreciar, las herramientas
TaskList, Cockpit y Admin, son recursos muy valiosos a la hora de trabajar con
las definiciones de procesos, iniciar instancias, administrar permisos y
ejecutar tareas.
Hasta una próxima publicación.
Comentarios
Publicar un comentario