miércoles, 16 de noviembre de 2016

Primeros pasos con Camunda BPM – Configurar Proyecto JAVA


En nuestro artículo anterior dimos inicio a la instalación de la plataforma de Camunda BPM y del modelador o editor.
En esta oportunidad vamos a tratar el tema de cómo configurar nuestro ambiente de desarrollo para poder modelar procesos, crear clases asociadas a estos procesos y desplegar nuestros procesos en la plataforma de BPM.
Usaremos Eclipse como IDE para el desarrollo y Maven como herramienta de construcción del proyecto. 


 
¿Se pueden modelar y desplegar procesos sin usar Eclipse ni Maven?
La respuesta es SI.
Sí Ud. sabe lo que hace puede generar su propio proyecto .war de java que contenga todos los archivos necesarios con la estructura requerida. Obvio que con Maven sobre Eclipse todo este proceso resulta mucho más fácil de gestionar y de ejecutar.
Es más, hasta podemos modelar nuestros procesos BPMN sin hacer uso del Modeler o editor de Camunda. Al ser el editor de Camunda compatible con el estándar BPMN 2.0, cualquier editor o software de edición de procesos compatible con dicho estándar, sin aportar etiquetas propias del fabricante, se podrá usar como fuente para los diagramas de proceso que usaremos en nuestro proyecto de BPM.
Obviamente, en estos artículos usaremos las bondades suministradas por el Modeler de Camunda.
Así que sin mayores preámbulos…. Manos a las sobras…

1.- Crear un nuevo proyecto Maven en Eclipse

Vaya a su editor eclipse, opción “File”, opción “New” y escoja la opción “Maven Project”, o la opción “Other” en caso de que no tenga desplegada la opción de proyectos Maven en el menú principal.
En esta ventana seleccionamos nuestros Workspace o dejamos el que ya está definido por omisión, y seleccionamos la opción de “Create a simple Project (skip archetype selection)

Hacemos click, pinchar, en el botón “next” para que lleguemos a la pestaña donde debemos configurar nuestros artefactos del proyecto.

Acá establecemos los siguientes elementos:

  Group ID = org.pigbar.bpm (o el ID de Grupo de su preferencia)
  Artifact ID = bpm_demo (Su nombre de proyecto BPM o artefacto)
  Version = 0.1 (o su esquema de versión favorito)
  Packaging= war (el empaquetado del proyecto BPM es un .war estándar)


Cuando tenga todo listo pulse el botón “Finish”. Eclipse procederá a configurar para nosotros un proyecto Java con la distribución de un proyecto Maven cualquiera y los mostrará en el explorador, explorer, de proyectos de la herramienta.

2.- Agregar las dependencias Maven de Camunda

Una vez creado nuestro proyecto Maven, es hora de agregar las dependencias correspondientes en el archivo pom.xml del proyecto.
Abra el archivo pom.xml, el cual se encuentra en el directorio raíz de las carpetas del proyecto, y agreguemos las siguientes definiciones o dependencias:


  4.0.0
  org.pigbar.bpm
  bpm_demo
  0.1
  war

    
      
        org.camunda.bpm
        camunda-bom
        7.5.0
        import
        pom
      
    
  

  
    
      org.camunda.bpm
      camunda-engine
      provided
    

    
      javax.servlet
      javax.servlet-api
      3.0.1
      provided
    
  

  
    
      
        org.apache.maven.plugins
        maven-war-plugin
        2.3
        
          false
        
      
    
  



Guarde los cambios y listo, ya podemos hacer nuestro primer “build” del Proyecto.
Ubique el archivo pom.xml en el explorador de proyectos o de paquetes, haga clik derecho sobre el archivo y seleccione la opción “Run as” y luego “Maven install”. Esto hará que el Maven descargue las dependencias incorporados en el archivo pom.xml de nuestro proyecto.
Al final debe darnos un mensaje del tipo:

[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------


Vayamos al siguiente paso…

3.- Agregar una Clase de Aplicación de Proceso (Process Application)

 
La clase Aplicación de Proceso constituye la interface entre nuestro proceso y el motor de BPM de la plataforma de Camunda.
Vayamos al explorador de proyectos, ubique la carpeta src/main/java y cree allí un paquete con un nombre adecuado a sus estándares y preferencias, por ejemplo:
pigbar.bpm.apps.bpm_demo
Dentro de ese paquete cree una nueva clase Java con el nombre:
BPMDemoApp
Y que extienda de la clase:
org.camunda.bpm.application.impl.ServletProcessApplication



Agregue la anotación @ProcessApplication("BPM Demo") a la clase, la cual nos debe quedar de la siguiente forma:

package pigbar.bpm.apps.bpm_demo;

import org.camunda.bpm.application.ProcessApplication;
import org.camunda.bpm.application.impl.ServletProcessApplication;

@ProcessApplication("BPM Demo")
public class BPMDemoApp extends ServletProcessApplication {
// sin implementar cuerpo de la clase
}


4.- Agregar archivo descriptor de despliegue processes.xml


El archivo processes.xml se utiliza para indicarle valores de configuración a la plataforma de BPM de Camunda donde nuestro proceso va a ser desplegado y ejecutado.
Este archivo debe ser creado en el directorio “src/main/resources/META-INF”, así que vayamos a la carpeta “src/main/resources” y en ella creamos la carpeta “META-INF” en caso de no existir. Ya dentro de este directorio procedemos a crear el archivo processes.xml con el siguiente contenido:



  
    default
    
      false
      true
    
  



El archivo processes.xml se puede dejar vacío, en ese caso se usa la configuración por omisión de la plataforma.
Ya estamos listos para modelar nuestros procesos, pero eso es tema de nuestra próxima publicación.


Hasta pronto.

No hay comentarios:

Publicar un comentario