Laboratorios de Sistemas Digitales Avanzados 5º curso de ...
Curso de JBPM5 - Laboratorios
-
Upload
oscar-vasquez-flores -
Category
Technology
-
view
847 -
download
1
Transcript of Curso de JBPM5 - Laboratorios
JBPM5 – Laboratorios.
Oscar Vásquez Flores([email protected])
JBPM5 – Laboratorios.
Oscar Vásquez Flores([email protected])
Laboratorio 1
Conceptos relacionados a JBPM
1. ¿Qué tipo de herramienta es JBPM?
2. Indicar 4 características de JBPM.
3. Indicar V/F * JBPM requiere de JBoss Application Server.
* JBPM soporta toda la especificación BPMN2 * JBPM tiene varias herramientas para diseñar procesos.
* Una aplicación Java standalone que se ejecuta en un dispositivo Android podría ejecutar un proceso de JBPM. * JBPM no soporta human task
* El componente “Repositorio de JBPM” se encargara de ejecutar el proceso y expone una interface para interactuar con ese proceso.
4. Según Red Hat, ¿Dentro de que suite de herramientas se encuentra JBPM5?
5. Indicar todos los componentes de JBPM.
6. Indicar que componente o grupo de componentes le parece los más importantes e indicar el motivo.
JBPM5 – Laboratorios.
Oscar Vásquez Flores([email protected])
Laboratorio 2
Preparando el ambiente de desarrollo
Contexto
1. Se asume: * PC para desarrollo es un Windows 7 de 64 bits.
* Se tiene instalado el navegador Firefox versión 19.0.2 * Respetar TODAS las versiones y rutas indicadas en el presente documento, en caso no fuera posible notificar la instructor.
2. Revisar que se cuente con los siguientes archivos:
* Instalador completo del JBPM5: jbpm-5.4.0.Final-installer-full.zip * Instalador del ANT: apache-ant-1.8.4-bin.zip
* Instalador del JDK: jdk-6u43-windows-x64.exe, lo resaltado puede variar
dependiendo del tipo de Windows a utilizar.
JBPM5 – Laboratorios.
Oscar Vásquez Flores([email protected])
Instalación del JDK
1. Instalar el JDK en C:/java/jdk1.6.0_43
NO es necesario instalar el JRE por separado, dar clic en Cancel
JBPM5 – Laboratorios.
Oscar Vásquez Flores([email protected])
2. Crear la variable de ambiente JAVA_HOME y que referencie a C:/java/jdk1.6.0_43
Start -> Computer -> (Clic derecho) -> Properties -> Advanced system settings -> Environmet Variables -> System Variables -> New:
3. Verificar el valor de la variable desde una ventana de comandos:
JBPM5 – Laboratorios.
Oscar Vásquez Flores([email protected])
Instalación del ANT
1. Desempaquetar el archivo apache-ant-1.8.4 .zip y colocarlo en:
C:\apache-ant-1.8.4
2. Modificar la variable de entorno Path, agregar al final ;C:\apache-ant-1.8.4\bin
JBPM5 – Laboratorios.
Oscar Vásquez Flores([email protected])
3. Probar que el comando ant sea reconocido desde una ventana de comandos:
JBPM5 – Laboratorios.
Oscar Vásquez Flores([email protected])
Instalación del JBPM
Revisar que no se tenga alguna instancia de JBoss corriendo en la PC
1. Descomprimir el archivo jbpm-5.4.0.Final-installer-full.zip en C:\jboss\jbpm540
2. Desde una ventana de comandos ejecutar:
ant install.demo.noeclipse
Esa tarea internamente va a ejecutar a:
install.jboss install.db.files install.guvnor.into.jboss
install.designer.into.jboss install.jBPM-gwt-console.into.jboss
install.jBPM-ht.into.jboss install.form.builder.into.jboss install.jBPM.runtime
JBPM5 – Laboratorios.
Oscar Vásquez Flores([email protected])
Ver los resultados:
3. Iniciar JBPM con:
ant start.demo.noeclipse
Si desea dar Stop a JBPM con:
ant stop.demo
JBPM5 – Laboratorios.
Oscar Vásquez Flores([email protected])
4. Revisar el log del JBoss
C:\jboss\jbpm540\jboss-as-7.1.1.Final\standalone\log
JBPM5 – Laboratorios.
Oscar Vásquez Flores([email protected])
Probando al JBPM
Se recomienda utilizar el navegar Firefox.
1. Revisando la console http://localhost:8080/jbpm-console
Ingresar con usuario/clave admin/admin
Puede ver el video indicado y probar el proceso de prueba: http://people.redhat.com/kverlaen/jbpm-installer-console.5.2.swf
2. Revisar el Drools Guvnor
http://localhost:8080/drools-guvnor
JBPM5 – Laboratorios.
Oscar Vásquez Flores([email protected])
Laboratorio 3
Plugins de Eclipse para JBPM
Para todos los casos es importante que el eclipse utilice el JDK 1.6.x, puede presentar problemas si trabaja con JDK 1.7
I. Utilizando el Eclipse BPMN2 Plugin
1. Utilizar el Eclipse eclipse-SDK-3.7.2-win32 descomprimirlo en: C:\eclipse\eclipse-BPMN2
Puede crear un acceso directo a eclipse.exe
2. Instalar el Eclipse BPMN2 Plugin http://download.eclipse.org/bpmn2-modeler/site
JBPM5 – Laboratorios.
Oscar Vásquez Flores([email protected])
3. Crear un proyecto Java de nombre TestBPMN2
JBPM5 – Laboratorios.
Oscar Vásquez Flores([email protected])
4. Crear un proceso simple de nombre invocar_java_bpmn
JBPM5 – Laboratorios.
Oscar Vásquez Flores([email protected])
Ver el contenido del archivo en XML
5. Crear un proceso simple de nombre invocar_java_jbpm, observar que
seleccionamos de tipo JBPM Process.
JBPM5 – Laboratorios.
Oscar Vásquez Flores([email protected])
Diseñar el proceso mostrado:
Ver el contenido del archivo en XML
6. Indique las diferencias entre el XML del proceso según BPMN2 vs JBPM
JBPM5 – Laboratorios.
Oscar Vásquez Flores([email protected])
II. Utilizando el JBPM Eclipse Plugin
1. Utilizar otra instalacion del Eclipse Classic, descomprimirlo en: C:\eclipse\eclipse-JBPM
JBPM5 – Laboratorios.
Oscar Vásquez Flores([email protected])
2. Instalar el JBPM Eclipse Plugin
El Plugin lo puede ubicar en: C:\jboss\jbpm540\lib org.drools.updatesite-5.5.0.Final-assembly.zip
JBPM5 – Laboratorios.
Oscar Vásquez Flores([email protected])
3. Diseño de un proceso.
* Crear un proyecto Java de nombre: TestJBPM * Crear un proceso de nombre: invocar_java
Diseño del proceso:
Nombre del proceso: invocar_java
JBPM5 – Laboratorios.
Oscar Vásquez Flores([email protected])
Id: invocar_java
Nombre del package: defaultPackage
Observar lo que realizará la única actividad.
System.out.println("Test desde JBPM");
4. Guardar el proceso en Guvnor:
Cambiar a la perspectiva Guvnor Repository Exploring
JBPM5 – Laboratorios.
Oscar Vásquez Flores([email protected])
Observar que el archivo esta sincronizado en Guvnor.
5. Borrar el archivo del proceso, esto lo eliminara localmente pero no del Guvnor.
JBPM5 – Laboratorios.
Oscar Vásquez Flores([email protected])
6. Obtener el proceso desde el Guvnor.
JBPM5 – Laboratorios.
Oscar Vásquez Flores([email protected])
Observar que el archivo esta otra vez en el proyecto.
JBPM5 – Laboratorios.
Oscar Vásquez Flores([email protected])
7. Cambiar de nombre a la única actividad a “Actividad de tipo Script” luego
sincronizar el cambio en Guvnor.
JBPM5 – Laboratorios.
Oscar Vásquez Flores([email protected])
Laboratorio 4
Web Process Designer
Ejercicio 1 – Creación de un proceso simple.
1. Crear el paquete com.procesos
2. Dentro del paquete com.procesos, crear el BPMN2 Process
PruebaProceso
JBPM5 – Laboratorios.
Oscar Vásquez Flores([email protected])
3. Expandir en todo la pantalla el Web Process Designer
4. Desactivar la historia local.
5. Diseñar el proceso mostrado.
Propiedades:
Diagrama BPMN2
Name PruebaProceso
ID PruebaProceso
JBPM5 – Laboratorios.
Oscar Vásquez Flores([email protected])
Task: Prueba de Script
TaskType Script
Script System.out.println("Prueba de Script"); System.out.println("Prueba desde Java");
ScriptLanguage Java
6. Validar el proceso
Dar clic en PNG para asociar un grafico al proceso, no es necesario que
guarde el grafico, con esto se solucionara el error
JBPM5 – Laboratorios.
Oscar Vásquez Flores([email protected])
7. Remover el asset, dando clic en Archive Selected, con eso pasara el
asset a la bandeja de archivados.
8. Ir a Administration->Archive y restaurar el asset:
Si desde esta sección vuelve a eliminar el asset se borrara de forma definitiva.
JBPM5 – Laboratorios.
Oscar Vásquez Flores([email protected])
9. Revisar todas los cambios del asset PruebaProceso
Puede ver el grafico según la versión que desea.
JBPM5 – Laboratorios.
Oscar Vásquez Flores([email protected])
10. Diferentes usuarios pueden realizar comentarios sobre el asset:
11. Probar las opciones de búsqueda del Guvnor, ubicar al proceso PruebaProceso
JBPM5 – Laboratorios.
Oscar Vásquez Flores([email protected])
Ejercicio 2 – Invocación a clases Java.
1. Crear un nuevo proceso de nombre PruebaJava
2. Diseñar el proceso mostrado:
La actividad invocara el metodo de una clase creada y le pasara un argumento al metodo. El argumento llegara al proceso al momento de iniciarse.
Propiedades: Diagrama BPMN2
Imports com.prueba.clases.*
Variable Definitions Name: person
Custom Type: com.prueba.clases.Person
Task: Prueba de Script
TaskType Script
Script HelloService.getInstance().sayHello(person.getName());
3. Es necesario que suba a Guvnor las clases Java (Person.class y HelloService.class) utilizadas Las clases las puede encontrar en:
\Laboratorios\Recursos\Lab05-El API Java para JBPM Recuerde que debe generar el jar y luego subir al Guvnor el jar.
JBPM5 – Laboratorios.
Oscar Vásquez Flores([email protected])
4. Hacer un Build Package a com.procesos
Observar el mensaje de éxito y el paquete indica las dependencias de:
JBPM5 – Laboratorios.
Oscar Vásquez Flores([email protected])
Laboratorio 5
El API Java para JBPM
Se utilizara el Eclipse que tiene instalado el JBPM Eclipse Plugin: C:\eclipse\eclipse-JBPM\eclipse
1. Crear el proyecto Java PruebaAPI_JBPM
2. En el eclipse crear la librería JBPM_API para contener a todos los Jars necesarios de JBPM
3. Asociar la librería JBPM_API al proyecto PruebaAPI_JBPM
4. Crear una clase InvocarProceso.java el cual debe ejecutar el proceso
PruebaProceso, el cual fue creado en el laboratorio anterior.
JBPM5 – Laboratorios.
Oscar Vásquez Flores([email protected])
5. Crear varias instancia del proceso PruebaProceso, ver los resultado en
la consola del Eclipse.
6. Crear una clase InvocarProcesoJava.java el cual debe ejecutar el
proceso PruebaJava, el cual fue creado en el laboratorio anterior.
Este proceso espera que se le envíe parametros de inicio, utilizar las clases de Recursos\Lab05-El API Java para JBPM para generar esos parametros.
HelloService.java Person.java
7. Crear varias instancia del proceso PruebaJava, ver los resultado en la consola del Eclipse.
8. Modificar la clase anterior y agregar un listener de eventos, mostrar un mensaje en la consola cuando: Termina la ejecución de cada nodo.
Antes de terminar la instancia de proceso.
9. Crear una nueva clase InvocarProcesoGuvnor.java debe ser similar a
InvocarProcesoJava.java, pero el diseño del proceso lo debe obtener de Guvnor.
10. Crear una nueva clase InvocarProcesoGuvnorPkg.java debe ser similar a InvocarProcesoJava.java, pero el diseño del proceso lo debe obtener de
Guvnor pero mediante un Paquete.
JBPM5 – Laboratorios.
Oscar Vásquez Flores([email protected])
Laboratorio 06
JBPM Console
Ejercicio I – Prueba de la consola
1. Subir al Guvnor los siguientes elementos, deben ir al defaultPackage
PruebaConsole.bpmn - > Es un proceso PruebaConsole-taskform.flt -> Es un formulario para pasar parametros
el proceso. TaskOne-taskform.flt –> Formulario para ser utilizado por un User Task.
TaskTwo-taskform.flt–> Formulario para ser utilizado por un User Task.
Estos elementos ya están desarrollados, se encuentran en:
Laboratorios\Recursos\Lab06-JBPM Console
Diseño del proceso
La TaskOne se le asigna a krisv y la TaskTwo se le asigna a john
Proceso subido en Guvnor
JBPM5 – Laboratorios.
Oscar Vásquez Flores([email protected])
Formularios subidos en Guvnor
2. El usuario krisv debe generar una instancia del proceso.
Revisar en que etapa se encuentra la instancia de proceso:
JBPM5 – Laboratorios.
Oscar Vásquez Flores([email protected])
Observar las variables del proceso
3. Observar que se le genero una tarea a kirsv, proceder a atender la tarea
Luego ver en que etapa esta el proceso, debería haber avanzado hasta la
Task Two, el cua debe ser atendido por john
4. Proceder a ejecutar la tarea de jhon.
JBPM5 – Laboratorios.
Oscar Vásquez Flores([email protected])
5. Observar que el proceso ya no tiene instancia, el cual indica que el
proceso termino.
JBPM5 – Laboratorios.
Oscar Vásquez Flores([email protected])
Ejercicio II – Cambio de responsables de tareas.
1. De:
C:\jboss\jbpm540\jboss-as-7.1.1.Final\standalone\configuration
Editar el archivo: users.properties y roles.properties para agregar 2 nuevos
usarios: luis y carlos
La TaskOne se le asigna a luis y la TaskTwo se le asigna a carlos
2. Hacer un Build al paquete.
3. Reiniciar el JBoss
4. Probar que ahora las tareas son atendidas por luis y carlos.
JBPM5 – Laboratorios.
Oscar Vásquez Flores([email protected])
Laboratorio 07
Human task
Aprobación de una tarjeta de crédito
Un cliente debe llenar un formato en papel para solicitar un tarjeta de crédito, los datos que debe ingresas son: nombres, apellidos, dirección,
estado civil, tipo de tarjeta(VISA, Mastercard, Amex), sueldo promedio mensual, correo electrónico.
Este formato es recibido por la asesora de servicios de una agencia bancaria, luego procede a ingresarlo al sistema de aprobación de tarjetas de
crédito, si la persona pide un VISA y gana mas de $1,000 USD se le aprueba la tarjeta de forma automática y se le asigna una línea el doble de
su sueldo promedio.
En caso de ganar menor o igual a $1,000 la solicitud es revisado por el
analista de crédito, el cual analiza el caso y aprueba o no la tarjeta adicionalmente indica la línea asignada.
Si el sueldo de la persona es menos de $200 USD debe recibir la aprobación del supervisor de tarjetas, el cual determina si aprueba o no la tarjeta,
adicionalmente asigna una línea igual a su sueldo promedio.
Luego de recibir todas las aprobaciones necesarias se en envía en paralelo
la notificación para la generación de la tarjeta al área de tarjetas y también lo notificación al sistema de créditos para generar el crédito.
Se debe esperar a que ambas acciones se hayan realizado para proceder a envía un correo de aceptación del cliente, indicando la línea aprobado.
Objetivos:
Realizar el diseño e implementación del proceso, para la prueba puede utilizar la JBPM Console.
Consideraciones:
Crear los grupos necesarios y usuarios para representar a los participantes del proceso.
Utilizar el proyecto Java:
Laboratorios\Recursos\Lab07-Human task\PruebaHumanTask donde se encuentra las librerías necesarias para la integracion con las demas aplicaciones.