Guía de inicio


Suite BPM JBoss de Red Hat 6.0

La guía de inicio para BPMS JBoss Red Hat

Kanchan Desai

Doug Hoffman

Eva Kopalova

Red Hat Content Services

Resumen

Esta guía le ayuda a los usuarios a instalar y configurar BPMS JBoss de Red Hat por primera vez.

Capítulo 1. Introducción

1.1. Sobre la Suite BPM JBoss de Red Hat

La suite BPM JBoss de Red Hat es una suite de gestion de procesos empresariales de código abierto que combina la administración de procesos empresariales y la gestión de reglas empresariales y habilita a las empresas y a los usuarios informáticos para crear, administrar e implementar procesos y reglas empresariales.
BRMS JBoss de Red Hat y la suite BPM JBoss de Red Hat usan un repositorio centralizado en donde todos los recursos se almacenan. Esto asegura consistencia, transparencia y la habilidad para realizar auditorías a través de la empresa. Los usuarios empresariales pueden modificar la lógica empresarial y los procesos empresariales sin requerir ayuda del personal de sistemas.
Para acomodar el componente de reglas empresariales, la suite BPM JBoss de Red Hat incluye BRMS JBoss de Red Hat.
El planificador de recursos empresariales se incluye como un avance de tecnología con este lanzamiento.

1.2. Componentes de la suite BPM JBoss de Red Hat

La suite BPM JBoss de Red Hat contiene los siguientes componentes:
Máquina de ejecución
El entorno del tiempo de ejecución para los activos empresariales (procesos, tareas, reglas, etc). Para obtener mayores detalles consulte la Guía de configuración y administración de la suite BPM JBoss de Red Hat.
Repositorio de artefactos (almacén de conocimiento)
Un almacenamiento para activos empresariales que proporcionan funcionalidades de control de revisiones (conecta repositorios GIT con activos empresariales).
Central empresarial
Una aplicación basada en red para la creación, administración y monitoreamiento de activos empresariales proporcionando un entorno integrado con las herramientas respectivas tal como reglas y herramientas de autoría de procesos, la herramienta de administración de activos empresariales para trabajar con el repositorio de artefactos, herramientas de administración de datos en tiempo de ejecución, editores de recursos, herramientas BAM (del inglés Business Activity Monitoring- monitoreamiento de actividades empresariales), herramientas de administración de tareas y herramientas BRMS. Para obtener mayores detalles consulte la Guía del usuario de la suite BPM JBoss de Red Hat.
La suite BPM JBoss de Red Hat (BPMS) se puede implementar para automatizar procesos empresariales tal como automatizar el proceso de aprobación de préstamos en un banco minorista. Esta es una implementación típica 'basada en procesos específicos' que puede ser el primer paso en una adopción más amplia de BPM a través de una empresa. Aprovecha las funcionalidades de BPM y las reglas empresariales de BPMS.
Un banco minorista ofrece varios tipos de productos de préstamo con diferentes términos y requerimientos de selección. Los clientes que requieren un préstamo deben llenar una aplicación de préstamo, la cual es procesada por el banco en varios pasos, verificando el criterio de selección, determinando los términos, verificando actividades fraudulentas y determinando el producto de préstamo más apropiado. Una vez aprobado, el banco crea y establece una cuenta de préstamo para el aplicante, quien luego puede acceder a los fondos. El banco debe asegurarse de cumplir con todos los requerimientos relevantes en cada paso del proceso y necesita administrar su portafolio de préstamo para maximizar sus ganancias. Las políticas tienen lugar para ayudar a tomar decisiones en cada paso y esas políticas están administradas activamente para optimizar resultados para el banco.
Los analistas empresariales en el banco modelan los procesos de aplicación para préstamos usando las herramientas de autor BPMN3 (diseñador de procesos) en la suite BPM:
Flujo de procesos de aplicación para préstamos de alto nivel

Figura 1.1. Flujo de procesos de aplicación para préstamos de alto nivel

Las reglas empresariales se desarrollan con las herramientas de autor de reglas en la suite BPM para aplicar políticas y tomar decisiones. Las reglas están enlazadas con los modelos de procesos para reforzar las políticas correctas en cada paso del proceso.
La sección de sistemas del banco implementa la suite BPM de manera que todo el proceso de aplicación para préstamos se pueda automatizar.
Automatización del proceso de aplicación para préstamos

Figura 1.2. Automatización del proceso de aplicación para préstamos

Todo el proceso de préstamo y de reglas se puede modificar en cualquier momento por parte de los analistas empresariales del banco. El banco tiene la habilidad de mantener constantemente un cumplimiento con los requerimientos de acuerdo con las regulaciones cambiantes y puede introducir de manera rápida nuevos productos de préstamo y mejorar las políticas de préstamos para competir efectivamente y dirigir la rentabilidad.

Capítulo 2. Inicio rápido con Red Hat JBoss BPM Suite

En esta sección descargamos, instalamos y ejecutamos Red Hat JBoss BPM Suite con el número mínimo de instrucciones. Para obtener pasos detallados y métodos opcionales de instalación, sáltese esta sección y continúe leyendo el resto de esta guía.
Estas instrucciones asumen que tiene instalada en su sistema la versión de Java soportada como mínimo. No se requiere un servidor Red Hat JBoss EAP ya existente ya que el instalador instala uno si no puede detectar uno.

Procedimiento 2.1. Guía de inicio rápido BPM Suite

  1. Descargue el instalador BPM Suite de access.redhat.com.
  2. Ejecute el instalador con el siguiente comando:
    java -jar jboss-bpms-installer-VERSION.GA-redhat-MINOR.jar
  3. Siga los pasos del instalador GUI tomando nota del nombre de usuario/contraseña para acceder a la aplicación BRMS después de la instalación.
  4. Después de una instalación exitosa, en una ventana de comandos navegue hasta la carpeta de inicio EAP en donde haya instalado BPM Suite.
  5. Inicie el servidor BPM Suite emitiendo el siguiente comando.
    bin/standalone.sh
  6. Abra un navegador de red e inicie sesión en la central empresarial navegando hasta http://localhost:8080/business-central/. Inicie la sesión usando la combinación de nombre de usuario/contraseña para acceder a la aplicación BPM Suite que creó en el momento de la instalación.
Ha instalado y ejecutado exitósamente BPM Suite. Ahora puede hacer lo siguiente:
Aprender más sobre los roles: Sección 3.1.3, “Definición de roles”
Crear usuarios adicionales: Sección 3.1.4, “Creación de usuarios”
Crear un proyecto Hello World: Capítulo 5, Proyecto Hello World
Examine la Guía de la aplicación de ejemplo BPM Working with the BPM Suite Example App
Busque instrucciones detalladas de instalación para usar el instalador: Installation Guide

Capítulo 3. Opciones de instalación

La suite BPM JBoss de Red Hat viene en dos versiones:
  • Instalador jar ejecutable para la instalación en Red Hat JBoss Enterprise Application Platform (EAP) 6.1.1.
  • Archivo comprimido de instalación, el cual viene en dos versiones:
    • jboss-bpms-6.MINOR_VERSION-redhat-x-deployable-eap6.x.zip: versión adaptada para implementación en la plataforma de aplicaciones empresariales JBoss de Red Hat (EAP 6.1.1).
    • jboss-bpms-6.MINOR_VERSION-redhat-x-deployable-generic.zip: la versión implementable con bibliotecas adicionales adaptadas para la implementación en el Red Hat JBoss Web Server (WS), Apache Tomcat 6 y Apache Tomcat 7.
Dependiendo de su entorno puede seleccionar la mejor opción de instalación de acuerdo con las necesidades de su proyecto.

3.1. La instalación agrupada EAP6

Esta sección describe la instalación del paquete de la suite BPM JBoss de Red Hat implementable para la plataforma de aplicaciones empresariales JBoss de Red Hat JBoss (EAP).

Nota

La configuración mínima soportada de Red Hat JBoss EAP para la instalación de la suite BPM JBoss de Red Hat es 6.1.1 y no 6.1.0.

3.1.1. Descarga del paquete EAP6

Para descargar el paquete de la suite BPM JBoss de Red Hat para la plataforma de aplicaciones empresariales JBoss, haga lo siguiente:
  1. Vaya al portal del cliente de Red Hat e inicie sesión.
  2. Seleccione DownloadsRed Hat JBoss MiddlewareDownload Software.
  3. Del menú desplegable Product seleccione BPM Suite.
  4. Del menú desplegable Version seleccione la versión del producto.
  5. En la tabla, navegue a la fila Red Hat JBoss BPM Suite 6.0.2 implementable para EAP 6.1.1 y luego haga clic en Descargar.

3.1.2. Instalación del paquete EAP6

Para instalar el paquete implementable para un EAP que todavía no se ha configurado, haga lo siguiente:
  1. Extraiga el paquete zip implementable para EAP que descargó del portal del cliente de Red Hat.
  2. Agrupe el paquete zip extraído para EAP en el directorio EAP SERVER_HOME.

    Aviso

    Este paso debe ser realizado con la misma cuenta de usuario que se utilizó para instalar EAP. Esta cuenta no debe ser la cuenta del superusuario.
  3. En este proceso, se sobreescribirán múltiples archivos en el directorio EAP SERVER_HOME y usted debe permitir que el proceso de descompresión sobreescriba estos archivos. Un ejemplo de un archivo que se sobreescribe es el archivo SERVER_HOME/bin/product.conf. Después de una agrupación exitosa, este archivo debe contener la cadena slot=bpms. Puede abrir este archivo para verificar que los archivos se hayan sobreescrito de manera exitosa.
En Red Hat Enterprise Linux puede utilizar el siguiente comando para extraer el archivo zip BRMS y unirlo con su directorio de servidor correctamente en un paso, si ejecuta este comando en el directorio en donde descargó el archivo zip:
unzip -u jboss-bpms-VERSION-TYPE.zip -d SERVER_HOME_PARENT_DIR

Ejemplo 3.1. El comando para descomprimir

unzip -u jboss-bpms-6.0.2-redhat-7-deployable-eap6.x.zip -d /home/john/myServers/
En el arranque del servidor se implementará la suite BPM JBoss de Red Hat.
Para instalar el paquete implementable para un EAP previamente configurado, haga lo siguiente:
  1. Extraiga el paquete zip implementable para EAP que descargó del portal del cliente de Red Hat.
  2. Descomprima el archivador comprimido descargado; sin embargo, no sobreescriba todos los archivos. Agrupe manualmente los siguientes archivos en el directorio SERVER_HOME.
    • jboss-eap-6.1/domain/configuration/* - (por favor tenga en cuenta que BPMS requiere JMS así que JMS se agrega por defecto en todos los perfiles en domain.xml proporcionado por la distribución BPMS).
    • jboss-eap-6.1/standalone/configuration/* - (por favor tenga en cuenta que BPMS requiere JMS así que JMS se agrega por defecto en todos los archivos de configuración de perfiles (especialmente en standalone.xml y standalone-ha.xml) proporcionado por la distribución BPMS).
    • jboss-eap-6.1/modules/layers.conf
    • jboss-eap-6.1/bin/product.conf
  3. Asegúrese de que el EAP de destino no incluya una implementación con un nombre que cree conflictos. Copie la carpeta jboss-eap-6.1/standalone/deployments en el directorio EAP_HOME de la distribución BPMS.
  4. Asegúrese de que no se ha llamado antes la capa del módulo EAP llamada BPMS y copie la carpeta jboss-eap-6.1/modules/system/layers/bpms en la carpeta EAP 6.1.1.

3.1.3. Definición de roles

Antes de iniciar el servidor e iniciar sesión en la central empresarial necesitará crear algunas cuentas de usuarios. Esta sección describe los diferentes roles de usuario que se utilizan Red Hat JBoss BPM Suite :
  • admin: los usuarios con el rol admin son los administradores de la aplicación. Los administradores pueden administrar los usuarios, administrar los repositorios (crear y clonar) y tienen acceso completo para realizar los cambios requeridos en la aplicación. Los admins tienen acceso a todas las áreas dentro del sistema.
  • developer: un usuario developer -desarrollador- tiene acceso a casi todas las funcionalidades y puede administrar reglas, modelos, flujos de procesos, formas y páneles. Pueden administrar el repositorio de activos, pueden crear, construir e implementar proyectos e incluso pueden usar el Red Hat JBoss Developer Studio para ver procesos. Solo se esconden ciertas funciones administrativas como el crear y clonar un nuevo repositorio para el rol del desarrollador.
  • analyst: un rol de analista tiene acceso a todas las funcionalidades de alto nivel para modelar y ejecutar sus proyectos. Sin embargo, el acceso AuthoringAdministration no está disponible para los usuarios con el rol de analista. Ciertas funcionalidades de menor nivel orientadas a los desarrolladores como la vista DeploymentArtifact Repository no son accesibles para este rol. Sin embargo, el botón Build & Deploy está disponible para el rol de analista usando el editor de proyectos.
  • user: un usuario o un usuario empresarial trabajan en las listas de tareas empresariales que se utilizan para operar cierto proceso. Un usuario con este rol puede acceder el pánel y administrar procesos.
  • manager: un manager -gerente- es un espectador del sistema y está interesado en las estadísticas con relación a los procesos empresariales y su rendimiento, indicadores empresariales y otros reportes del sistema. Un usuario con este rol tiene acceso al BAM solamente.

Nota

Ingrese los roles mencionados anteriormente durante el proceso de creación del usuario.

3.1.4. Creación de usuarios

Para empezar a agregar nuevos usuarios necesitará ejecutar el script add-user.sh en un sistema Unix o el archivo add-user.bat en un sistema Windows desde el directorio bin EAP.
  1. Ejecute ./add-user.sh en un sistema Unix o add-user.bat en un sistema Windows desde el directorio bin.
  2. Ingrese b para seleccionar un usuario de la aplicación en el tipo de usuario y presione Intro.
  3. Acepte el dominio predeterminado (ApplicationRealm): presionando Intro.
  4. En el campo del nombre del usuario ingrese un nombre de usuario y confirme. Por ejemplo: helloworlduser.
  5. Cree la contraseña del usuario en el campo de la contraseña y reingrese la contraseña. Por ejemplo: Helloworld@123.

    Nota

    La contraseña debe tener por lo menos 8 caracteres de largo y debe tener caracteres en mayúsculas y minúsculas (por ejemplo, A-Z, a-z) por lo menos un caracter numérico (por ejemplo,. 0-9) y por lo menos un caracter especial (por ejemplo, ~ ! @ # $ % ^ * ( ) - _ + =).
  6. Ingrese una lista de roles que el usuario necesitará en el campo de roles (consulte Sección 3.1.3, “Definición de roles”).
    Los usuarios de la central empresarial necesitan por lo menos tener el rol analyst y los usuarios dashbuilder necesitan tener el rol admin. Los roles se deben ingresar como una lista:
  7. Confirme que quiere agregar el usuario.
  8. Ingrese si en el siguiente campo (esto es para habilitar el uso de clústers en el futuro si se requiere).

3.2. La instalación agrupada genérica implementable

Para instalar la suite BPM JBoss de Red Hat en el Red Hat JBoss Web Server (WS) , necesita utilizar el paquete implementable genérico del producto.
Para la instalación en WS, el paquete implementable genérico contiene bibliotecas de seguridad y administradores de transacciones adicionales que no son parte del WS JBoss Red Hat.
Note que el paquete implementable genérico contiene los siguientes archivos zip:
  • jboss-bpms-engine.zip: las bibliotecas de la máquina de ejecución soportada que se necesitan si está incluyendo la máquina en su aplicación
  • jboss-bpms-manager.zip: las aplicaciones de red business-central.war y dashbuilder.war

3.2.1. Descarga del paquete implementable genérico

Para descargar el paquete de la suite BPM JBoss de Red Hat genérico implementable para el servidor de red JBoss, haga lo siguiente:
  1. Vaya al portal del cliente de Red Hat e inicie sesión.
  2. Seleccione DownloadsRed Hat JBoss MiddlewareDownload Software.
  3. Del menú desplegable Product seleccione BPM Suite.
  4. Del menú desplegable Version seleccione la versión del producto.
  5. En la tabla, navegue a la fila Red Hat JBoss BPM Suite 6.0.2 Deployable for all supported containers y luego haga clic en Download.

3.2.2. Instalación del paquete implementable genérico

Para instalar el paquete implementable genérico, necesita configurar lo siguiente después de haber instalado la plataforma subyacente (Red Hat JBoss WS):
  1. Extraiga el paquete zip genérico implementable que descargó del Portal del cliente de Red Hat. Este paquete zip contiene dos archvos zip más: jboss-bpms-engine.zip y jboss-bpms-manager.zip.
  2. Extraiga el contenido del archivo jboss-bpms-manager.zip en una ubicación temporal. Este archivo zip contiene dos carpetas archivadoras de aplicaciones de red: business-central.war y dashbuilder.war en formatos expandidos y estas están ahora en su ubicación temporal. Vuelva a nombrar estas carpetas para borrar la extensión .war.
    Copie ambas carpetas directamente bajo la carpeta $TOMCAT_DIR/webapps.
    Al final debe tener dos carpetas en formato expandido: $TOMCAT_DIR/webapps/business-central y $TOMCAT_DIR/webapps/dashbuilder.

    Nota

    $TOMCAT_DIR se refiere al directorio de inicio en donde se encuentra su servidor de red. Reemplácelo con la ruta a su directorio de inicio del servidor de red, por ejemplo: /home/john/jboss-ews-2.0/tomcat7/
  3. Extraiga la carpeta jboss-bpms-engine del archivador jboss-bpms-engine.zip a una ubicación temporal desde donde puede copiar las bibliotecas requeridas. Esta carpeta ahora contiene todas las abibliotecas centrales BPMS bajo la carpeta extraída y una carpeta lib.
  4. Instale el gestor de transacciones.
    Copie las siguientes bibliotecas jar del administrador de transacciones de la carpeta lib en donde extrajo las bibliotecas jboss-bpms-engine al directorio $TOMCAT_DIR/lib/:
    • btm-VERSION.jar
    • btm-tomcat55-lifecycle-VERSION.jar
    • jta-VERSION.jar
    • slf4j-api-VERSION.jar
    • slf4j-ext-VERSION.jar
    Además descargue la siguiente biblioteca y cópiela en la carpeta $TOMCAT_DIR/lib/ también:
  5. Instale el controlador en su base de datos: copie el archivo jar con el controlador de la base de datos relevante en $TOMCAT_DIR/lib/.

    Nota

    Si utiliza la base de datos H2 incluída, el controlador está disponible en business-central/WEB-INF/lib/.
  6. Cree los archivos de configuración del gestor de transacciones en $TOMCAT_DIR/conf/:
    • btm-config.properties
      bitronix.tm.serverId=tomcat-btm-node0
      bitronix.tm.journal.disk.logPart1Filename=${btm.root}/work/btm1.tlog
      bitronix.tm.journal.disk.logPart2Filename=${btm.root}/work/btm2.tlog
      bitronix.tm.resource.configuration=${btm.root}/conf/resources.properties
      
    • resources.properties (el resource.ds1.uniqueName define el nombre de la fuente de datos utilizado después en la definición de recursos tomcat - tome nota de este valor).
      Asegúrese de cambiar los valores en las siguientes definiciones para que coincidan con su entorno.

      Ejemplo 3.2. Definición de la fuente de datos H2

      resource.ds1.className=bitronix.tm.resource.jdbc.lrc.LrcXADataSource
      resource.ds1.uniqueName=jdbc/jbpm
      resource.ds1.minPoolSize=10
      resource.ds1.maxPoolSize=20
      resource.ds1.driverProperties.driverClassName=org.h2.Driver
      resource.ds1.driverProperties.url=jdbc:h2:file:~/jbpm
      resource.ds1.driverProperties.user=sa
      resource.ds1.driverProperties.password=
      resource.ds1.allowLocalTransactions=true

      Ejemplo 3.3. Definición de la fuente de datos MySQL 5.5

      resource.ds1.className=com.mysql.jdbc.jdbc2.optional.MysqlXADataSource
      resource.ds1.uniqueName=jdbc/jbpm
      resource.ds1.minPoolSize=0
      resource.ds1.maxPoolSize=10
      resource.ds1.driverProperties.URL=jdbc:mysql://localhost:3306/sampledb
      resource.ds1.driverProperties.user=dbuser
      resource.ds1.driverProperties.password=dbpassword
      resource.ds1.allowLocalTransactions=true

      Ejemplo 3.4. Definición de la fuente de datos DB2 Type 4

      resource.ds1.className=com.ibm.db2.jcc.DB2Driver
      resource.ds1.uniqueName=jdbc/jbpm
      resource.ds1.minPoolSize=0
      resource.ds1.maxPoolSize=10
      resource.ds1.driverProperties.URL=jdbc:db2://localhost:50000/sampledb
      resource.ds1.driverProperties.user=dbuser
      resource.ds1.driverProperties.password=dbpassword
      resource.ds1.allowLocalTransactions=true

      Ejemplo 3.5. Definición de la fuente de datos Oracle

      resource.ds1.className=oracle.jdbc.xa.client.OracleXADataSource
      resource.ds1.uniqueName=jdbc/jbpm
      resource.ds1.minPoolSize=0
      resource.ds1.maxPoolSize=10
      resource.ds1.driverProperties.URL=jdbc:oracle:thin:@//localhost:1521/bpms 
      resource.ds1.driverProperties.user=dbuser
      resource.ds1.driverProperties.password=dbpassword
      resource.ds1.allowLocalTransactions=true

      Ejemplo 3.6. Definición de la fuente de datos del servidor Microsoft SQL

      resource.ds1.className=com.microsoft.sqlserver.jdbc.SQLServerDriver
      resource.ds1.uniqueName=jdbc/jbpm
      resource.ds1.minPoolSize=0
      resource.ds1.maxPoolSize=10
      resource.ds1.driverProperties.URL=jdbc:sqlserver://localhost:1433;databaseName=bpms;
      resource.ds1.driverProperties.user=dbuser
      resource.ds1.driverProperties.password=dbpassword
      resource.ds1.allowLocalTransactions=true
  7. Configure el escucha del gestor de transacciones en $TOMCAT_DIR/conf/server.xml para iniciar y detener Bitronix en el arranque y detención del contenedor:
    Agregue el siguiente elemento como el último elemento <Listener> en el elemento <Server>:
    <Listener className="bitronix.tm.integration.tomcat55.BTMLifecycleListener" />
    
  8. Defina la propiedad del sistema btm.root y la ubicación en donde se ubica el archivo de configuración bitronix:
    En $TOMCAT_DIR/bin/ cree el archivosetenv.sh con el siguiente contenido:
    CATALINA_OPTS="-Xmx512M -XX:MaxPermSize=512m -Dbtm.root=$CATALINA_HOME -Dbitronix.tm.configuration=$CATALINA_HOME/conf/btm-config.properties -Dorg.jbpm.designer.perspective=RuleFlow"
    Otorgue permisos de ejecución de archivos si aplica. La última propiedad org.jbpm.designer.perspective se establece como RuleFlow para permitir que la perspectiva predeterminada para el diseñador sea RuleFlow en lugar de Full.

    Importante

    En sistemas Microsoft Windows reemplace el valor $CATALINA_HOME en el contenido del archivo con el nombre de la variable de entorno equivalente o use la ruta absoluta y agregue los valores en el archivo setenv.bat tal como se muestra en el siguiente ejemplo:
    set "CATALINA_OPTS=-Xmx512M -XX:MaxPermSize=512m -Dbtm.root=C:/Tomcat -Dbitronix.tm.configuration=C:/Tomcat/conf/btm-config.properties -Dorg.jbpm.designer.perspective=RuleFlow"
Para establecer la central empresarial haga lo siguiente:
  1. Establezca una Valve de manera que la aplicación de red de la central empresarial pueda cargar la configuración de los usuarios en Tomcat:
    1. Defina los usuarios y roles en $TOMCAT_DIR/conf/tomcat-users.xml. Note que la central empresarial requiere que los usuarios tengan los roles especificados como admin y/o analyst (fpara mayor información sobre definiciones de roles y usuarios consulte la documentación de Tomcat 7).
      El programa listado a continuación muestra un ejemplo de la manera en que estos dos roles se agregarían y cómo se le asignará estos roles al usuario llamado bpmsadmin.
        <role rolename="admin"/>
        <role rolename="analyst" />
        <user username="bpmsadmin" password="P@ssw0rd" roles="admin,analyst"/>
      
      
    2. Copie kie-tomcat-integration-VERSION.jar de $TOMCAT_DIR/webapps/business-central/WEB-INF/lib/ a $TOMCAT_DIR/lib/.
    3. Copie jaxb-api-VERSION.jar de $TOMCAT_DIR/webapps/business-central/WEB-INF/lib/ a $TOMCAT_DIR/lib/.
    4. En $TOMCAT_DIR/conf/server.xml agregue la declaración de la válvula Tomcat en el elemento relevante <host>:
      <Valve className="org.kie.integration.tomcat.JACCValve" />
      
    5. En $TOMCAT_DIR/webapps/business-central/WEB-INF/web.xml borre el comentario de las entradas marcadas con el comentario TOMCAT-JEE-SECURITY.
    6. Configure la fuente de autenticación tomcat: en el directorio $TOMCAT_DIR/webapps/business-central/WEB-INF/classes/META-INF/services/, renombre los siguientes archivos: org.uberfire.security.auth.AuthenticationSource como org.uberfire.security.auth.AuthenticationSource-ORIGIN y org.uberfire.security.auth.AuthenticationSource-TOMCAT-JEE-SECURITY como org.uberfire.security.auth.AuthenticationSource:
      # Comando de ejemplo si ejecuta este desde el directorio $TOMCAT_DIR/webapps
      $ mv business-central/WEB-INF/classes/META-INF/services/org.uberfire.security.auth.AuthenticationSource business-central/WEB-INF/classes/META-INF/services/org.uberfire.security.auth.AuthenticationSource-ORIGIN
      $ mv business-central/WEB-INF/classes/META-INF/services/org.uberfire.security.auth.AuthenticationSource-TOMCAT-JEE-SECURITY business-central/WEB-INF/classes/META-INF/services/org.uberfire.security.auth.AuthenticationSource
      
    7. En $TOMCAT_DIR/webapps/business-central/WEB-INF/beans.xml borre el comentario JAASUserGroupInfoProducer y agregue el comentario org.jbpm.kie.services.cdi.producer.DefaultUserGroupInfoProducer (opcional). La parte alternatives de este archivo se debe ver así:
        <alternatives>
          <!--    <class>org.jbpm.kie.services.cdi.producer.DefaultUserGroupInfoProducer</class> -->
          <!-- uncomment JAASUserGroupInfoProducer when using JEE security on Tomcat -->
          <class>org.jbpm.kie.services.cdi.producer.JAASUserGroupInfoProducer</class>
        </alternatives>						
      					
      
      
  2. Si está usando una fuente de datos diferente de la predeterminada proporcionada por la base de datos H2 subyacente necesitará configurar la persistencia. Si está utilizando la base de datos H2 predeterminada entonces puede ignorar el resto de pasos en este procedimiento.
    En este procedimiento se configura una fuente de datos con el nombre JNDI jdbc/myDatasource tal como se define en uniqueName=jdbc/jbpm en el archivo bitronix resources.properties (para la opción MySQL):
    1. En business-central/META-INF/context.xml reemplace el nombre JNDI de la fuente de datos en el elemento <Resource>. El atributo uniqueName se refiere a la propiedad resource.ds1.uniqueName establecida en resources.properties:
      <Resource name="jdbc/myDatasource" uniqueName="jdbc/jbpm" auth="Container" removeAbandoned="true" factory="bitronix.tm.resource.ResourceObjectFactory" type="javax.sql.DataSource"/>
      
    2. En business-central/WEB-INF/web.xml reemplace el nombre JNDI de la fuente de datos en el elemento <res-ref-name> con su nombre de fuente de datos:
      <resource-ref>
              <description>Console DS</description>
              <res-ref-name>jdbc/myDatasource</res-ref-name>
              <res-type>javax.sql.DataSource</res-type>
              <res-auth>Container</res-auth>
      </resource-ref>
      
    3. Cambie business-central/WEB-INF/classes/META-INF/persistence.xml.
      En este archivo cambie el nombre del dialecto hibernate utilizado para su base de datos si está utilizando una base de datos diferente de H2. El código a continuación demuestra la información de la base de datos original para persistence.xml:
      <property name="hibernate.dialect" value="org.hibernate.dialect.H2Dialect"/>
      
      Esta información se puede actualizar de la siguiente manera (tal como se demuestra con la base de datos MySQL a continuación):
      <property name="hibernate.dialect" value="org.hibernate.dialect.MySQLDialect"/>
      

      Nota

      El dialecto para DB2 es org.hibernate.dialect.DB2Dialect, para DB2 en AS/400 es org.hibernate.dialect.DB2400Dialect, para Oracle es org.hibernate.dialect.Oracle10gDialect y para el servidor Microsoft SQL es org.hibernate.dialect.SQLServerDialect
    4. Cambie el archivo business-central/WEB-INF/classes/META-INF/persistence.xml de manera que la máquina de procesos BPMS pueda usar la nueva base de datos.
      El código a continuación demuestra la información de la fuente de datos original para persistence.xml:
      <jta-data-source>java:comp/env/jdbc/jbpm</jta-data-source>
      
      Cambie este valor a la fuente de datos definida anteriormente:
      <jta-data-source>java:comp/env/jdbc/myDatasource</jta-data-source>
      
  3. Ahora puede iniciar JBoss Web Server para iniciar sesión en la central empresarial.
    1. Ejecute startup.sh en el directorio $TOMCAT_HOME/bin.
      ./startup.sh
    2. Navegue hasta http://localhost:8080/business-central en un navegador de red.
    3. Inicie sesión con el nombre de usuario/contraseña correctos tal como aparece en el archivo tomcat-users.xml en donde definió los roles de usuario.
Para establecer un panel de construcción en el servidor de red JBoss Red Hat, haga lo siguiente:
  1. Definir usuarios y roles en $TOMCAT_DIR/conf/tomcat-users.xml. Note que Dashbuilder requiere que los usuarios tengan el rol especificado como admin y/o analyst. Si ya definió estos usuarios para la central empresarial entonces no necesita definirlos de nuevo.
  2. Habilitar el inicio de sesión único entre Dashbuilder y la central empresarial borrando el comentario de las siguientes líneas en el archivo $TOMCAT_DIR/conf/server.xml:
    <Valve className="org.apache.catalina.authenticator.SingleSignOn" />
  3. Así como con la configuración de la central empresarial, si está utilizando una base de datos diferente de la base de datos H2 integrada y predeterminada entonces necesitará configurar la persistencia.
    En este procedimiento se configura una fuente de datos con el nombre JNDI jdbc/dashbuilderDS tal como se define en uniqueName=jdbc/jbpm en el archivo bitronix resources.properties:
    1. En dashbuilder/META-INF/context.xml reemplace el nombre JNDI de la fuente de datos en el elemento <Resource>. El atributo uniqueName se refiere a la propiedad resource.ds1.uniqueName establecida en resources.properties:
      <Resource name="jdbc/dashbuilderDS" uniqueName="jdbc/jbpm" auth="Container" removeAbandoned="true" factory="bitronix.tm.resource.ResourceObjectFactory" type="javax.sql.DataSource"/>
      

      Nota

      Dependiendo de su base de datos es posible que necesite definir algunas otras propiedades aquí también. Por ejemplo, en un entorno Oracle esta entrada puede verse como el siguiente listado.
      <Resource name="jdbc/jbpm" uniqueName="jdbc/jbpm" auth="Container"  removeAbandoned="true" factory="bitronix.tm.resource.ResourceObjectFactory" type="javax.sql.DataSource" username="username" password="password"  driverClassName="oracle.jdbc.xa.client.OracleXADataSource" url="jdbc:oracle:thin:YOUR-URL:1521:YOUR-DB" maxActive="8" />
      
      
    2. En dashbuilder/WEB-INF/web.xml agregue el nombre JNDI de la fuente de datos en el elemento <res-ref-name> con su nombre de fuente de datos:
      <resource-ref>
          <description>Dashboard Builder Datasource</description>
          <res-ref-name>jdbc/dashbuilderDS</res-ref-name>
          <res-type>javax.sql.DataSource</res-type>
          <res-auth>Container</res-auth>
      </resource-ref>
      
    3. En dashbuilder/META-INF/context.xml defina la fábrica de transacciones:
       <Transaction factory="bitronix.tm.BitronixUserTransactionObjectFactory"/>
      
    4. Actualice el nombre JNDI de la fuente de datos en dashbuilder/WEB-INF/etc/hibernate.cfg.xml en el elemento <session-factory>:
      <property name="connection.datasource">java:/comp/env/jdbc/dashbuilderDS</property>
      
  4. Reinicie el servidor de red Java para que los cambios tengan efecto. Una vez reiniciado puede navegar al Dashbuilder desde la central empresarial o directamente a través de: http://localhost:8080/dashbuilder.

3.3. Inicio del servidor

Si ha instalado BPMS usando ya sea el instalador o por medio de la instalación agrupada EAP6 entonces ahora puede iniciar su servidor en uno de dos modos disponibles.

Nota

Si instaló BPMS usando la versión implementable genérica en el servidor de red Java de Red Hat, las instrucciones para descargar e instalar también contienen las instrucciones para iniciar el servidor. Puede ignorar la siguiente discusión.
El script de arranque predeterminado, standalone.sh con el que se envía la suite BPMJBoss de Red Hat está optimizado para rendimiento. Para ejecutar su servidor en modo de rendimiento, haga lo siguiente:
  1. En la línea de comandos vaya al directorio $SERVER_HOME/bin/.
  2. En un entorno Unix ejecute:
    ./standalone.sh
    En un entorno Windows ejecute:
    ./standalone.bat
La suite BPMJBoss Red Hat también se envía con un script separado, standalone-secure.sh que está optimizado para la seguridad. Este script aplica una política de seguridad por defecto que protege en contra de alguna vulnerabilidad de seguridad conocida.

Nota

Se recomienda que los entornos de producción utilicen el script standalone-secure.sh.

Aviso

El uso de un administrador de seguridad impone una sanción importante en el rendimiento que debe tener en mente. El intercambio entre la seguridad y el rendimiento se debe realizar teniendo en consideración las circunstancias individuales. Consulte Sección 3.4, “Administrador de seguridad Java y gestión de rendimiento”.
Para ejecutar su servidor en el modo seguro con este script, haga lo siguiente:
  1. En la línea de comandos vaya al directorio $SERVER_HOME/bin/.
  2. En un entorno Unix ejecute:
    ./standalone-secure.sh
    En un entorno Windows ejecute:
    ./standalone-secure.bat

3.4. Administrador de seguridad Java y gestión de rendimiento

Como se observó anteriormente el habilitar el administrador de seguridad Java (JSM del inglés Java Security Manager) como un entorno de pruebas completo para la evaluación de scripts MVEL en BPMS introduce una penalidad de rendimiento en entornos de alta carga. Se deben tener en cuenta los marcadores de entorno y de rendimiento al implementar una aplicación BPMS. Use las siguientes directrices para implementar aplicaciones BPMS seguras y de alto rendimiento.
  • En entornos de alto rendimiento en donde el rendimiento es crítico se recomienda que sólo se implementen aplicaciones que hayan sido desarrolladas en otros sistemas y que hayan sido revisadas apropiadamente. También se recomienda no crear ningún usuario con el rol Analyst en dichos sistemas. Si se toman en cuenta estas medidas entonces es seguro el dejar JSM deshabilitado en estos sistemas de manera que no introduzca ninguna degradación del rendimiento.
  • En entornos de prueba y desarrollo sin altas cargas o en entornos en donde la autoría de reglas y procesos está expuesta a redes externas, se recomienda tener JSM habilitado con el fin de lograr beneficios de seguridad de una evaluación completa del entorno de prueba de MVEL.
No es seguro y no se recomienda el permitir que usuarios con el rol Analyst inicien sesión en la consola central empresarial con JSM inhabilitado.

Capítulo 4. Inicio de sesión en la central empresarial

Inicio de sesión en la central empresarial después de que el servidor ha iniciado exitósamente.
  1. Navegue hasta http://localhost:8080/business-central en un navegador de red. Si la interfaz se ha configurado para ejecutar desde un nombre de dominio, substituya localhost para el nombre del dominio. Por ejemplo http://www.example.com:8080/business-central.
  2. Inicie sesión con las credenciales de usuario que se crearon durante la instalación. Por ejemplo: User = helloworlduser and password = Helloworld@123.

Capítulo 5. Proyecto Hello World

Para demostrar las funcionalidades básicas de la suite BPM JBoss Red Hat, este capítulo le mostrará cómo configurar el proyecto Hello World con un proceso empresarial Hello World. Todo lo que este proceso empresarial hará es presentar el mensaje Hello World! y terminar la ejecución.
Tendrá que hacer lo siguiente:
  1. Cree un repositorio Hello World en el repositorio Artifact.
  2. Cree el proyecto Hello World con la definición del proceso empresarial con la definición del proceso empresarial HelloWorld.
  3. Modele la lógica del proceso Hello World en el proceso empresarial usando la herramienta del diseñador de procesos gráfico.
  4. Construya e implemente el proyecto en la máquina de ejecución ejecutando localmente.
  5. Ejecute el proceso Hello World.
  6. Monitoree la ejecución del proceso.

5.1. Creación de una estructura de repositorio

Todos los activos empresariales viven en repositorios que viven en unidades organizacionales, los cuales son directorios en el repositorio Artifact. Por defecto, el repositorio Artifact no contiene ninguna unidad organizacional. Por lo tanto, para poder crear sus propios activos empresariales tal como un proceso empresarial, necesita crear una unidad organizacional en el repositorio Artifact y un repositorio (Git) en el. Luego el repositorio puede contener su proyecto. Un proyecto puede contener una estructura de paquete arbitraria, la cual le permite estructurar su contenido en una estructura lógica de "directorio". Cualquier paquete puede contener sus activos empresariales (para mayor información sobre el repositorio Artifact consulte la Red Hat JBoss BRMS User Guide).
Para crear la estructura del repositorio, haga lo siguiente:
  1. Abra la central empresarial en su navegador de red (si está ejecutando localmente http://localhost:8080/business-central) e inicie sesión como usuario con el rol admin (helloworlduser).
  2. Cree una unidad organizacional en el repositorio Artifact:
    1. Vaya a AuthoringAdministration.
    2. En el menú de perspectivas haga clic en Organizational UnitsManage Organizational Units.
    3. En la vista que se presenta Organizational Unit Manager haga clic en Add.
      En la ventana que se presenta Add New Organizational Unit defina las propiedades de las unidades y haga clic en OK:
      • Nombre: helloworld
      • Propietario: helloworlduser
  3. Cree un nuevo repositorio en la unidad organizacional helloworld:
    1. Vaya a AuthoringAdministration.
    2. En el menú de perspectivas haga clic en RepositoriesNew repository.
    3. En la ventana que se presenta Create Repository defina las propiedades del repositorio:
      • Nombre del repositorio: helloworldrepo
      • Unidad organizacional: helloworld
  4. Vaya a AuthoringProject Authoring.
  5. En el explorador de proyectos en la casilla desplegable de la unidad organizacional, seleccione helloworld y en la casilla desplegable del repositorio seleccione helloworldrepo.
    Seleccione el repositorio helloworldrepo en el grupo organizacional helloworld en el explorador de proyectos

    Figura 5.1. Seleccione el repositorio helloworldrepo en el grupo organizacional helloworld en el explorador de proyectos

  6. Cree un proyecto en el repositorio helloworld:
    1. En el menú de perspectivas vaya a New ItemProject
    2. En la ventana que se presenta Create new defina sus propiedades del proyecto:
      • Nombre del recurso (nombre del proyecto): HelloWorld
      • Ruta: default://master@helloworldrepo/
    3. En el diálogo New Project Wizard defina las propiedades maven del proyecto. Presione Intro después de realiza cada entrada:
      • Id del grupo: org.jbpm
      • Id del arterfacto: HelloWorld
      • Id de la versión: 1.0
    4. Haga clic en Finish.

Capítulo 6. Proceso Hello World

En este capítulo continuaremos con el ejemplo de Hello World y crearemos todo un proceso empresarial para demostrar la creación de un proceso básico Hello World.

6.1. Creación de procesos empresariales

Para crear una nueva definición de proceso empresarial haga lo siguiente:
  1. Utilice la perspectiva de autoría de proyectos (AuthoringProject Authoring).
  2. En la vista del explorador de proyectos a la izquierda, seleccione la unidad organizacional helloworld, el repositorio helloworldrepo, el proyecto HelloWorld y el paquete org.jbpm: esto define la ubicación en el repositorio Artifact, en donde creará su definición de proceso empresarial.

    Nota

    Asegúrese de seleccionar el paquete org.jbpm. El seleccionar un paquete incorrecto hace que la implementación falle.
  3. En el menú de perspectivas haga clic en New ItemBusiness Process y defina los detalles de la definición de procesos:
    • Ingrese el nombre del recurso como HelloWorld.
  4. Haga clic en Aceptar.
Se abre el diseñador de procesos con la vista de la definición del proceso creado.

6.2. Modelado de procesos empresariales

Después de haber creado la definición de procesos empresariales, puede diseñar el proceso empresarial en el diseñador de procesos empresariales: el diseñador del proceso empresarial debe estar abierto en una pestaña a la derecha. Si cerró la pestaña, en el explorador de proyectos haga clic en HelloWorld bajo Business Processes para volver a abrir el diseñador de procesos empresariales. Asegúrese de seleccionar el paquete correcto (org.jbpm.helloworld). Para diseñar el contenido del proceso, haga lo siguiente:
  1. Amplie la paleta Object Library con los elementos del proceso: haga clic en el botón con doble flecha ( ) en la esquina superior izquierda de la pestaña del diseñador de procesos empresariales.
  2. Aparece un elemento de inicio del evento.
  3. Haga clic en el elemento de inicio del evento: los objetos de enlace rápido aparecen alrededor del nodo. Haga clic en el ícono de la tarea ( ) para crear un flujo de secuencia saliente y un elemento de tarea conectado al inicio del evento.
  4. Cree un evento temporizador: de la paleta arrastre y deje caer el Timer (bajo Catching Intermediate Events) y conecte la tarea al elemento temporizador usando el menú de enlace rápido.
  5. Cree el elemento Terminar evento conectado al elemento Evento temporizador (ya sea usando la funcionalidad de enlace rápido o arrastrándolo de la paleta).
Borrador del proceso HelloWorld

Figura 6.1. Borrador del proceso HelloWorld

6.3. Definición de propiedades del elemento

Ahora necesita definir las propiedades del elemento:
  1. Haga clic en la doble flecha ( ) en la esquina superior derecha para expandir la pestaña Properties.
  2. Haga clic en cualquier parte. La pestaña Properties presenta las propiedades del proceso HelloWorld. Las propiedades requeridas son pre-definidas; sin embargo, puede cambiar sus valores si es necesario.
  3. El elemento de inicio y el elemento para terminar solo tienen propiedades opcionales. Sin embargo, los elementos tareas necesitan su tipo y propiedades específicas de tipo definidas: haga clic en el elemento tarea y defina las propiedades requeridas:
    • Name: ScriptTask
    • Task Type: Script
    • Script Language: java
    • Script: System.out.println("Hello World!");
      Haga clic en Aceptar.
    Ha definido una tarea que realizará un script durante la ejecución. El script está definido en Java y ejecuta el método System.out.println("Hello World!");, eso significa que escribirá Hello World! en la salida estándar del servidor (por defecto, la salida estándar del servidor es la consola en la que se inició el servidor).
  4. Todavía necesita definir propiedades del evento temporizador para hacer que el proceso espere en tiempo de ejecución de manera que usted pueda inspeccionar su ejecución: haga clic en el elemento temporizador y defina las propiedades requeridas:
    • Time Cycle Language: Cron
    • Duration: 1m y presione Intro.
      Por lo tanto el proceso esperará por un minuto en el evento temporizador después de que ejecuta la tarea script.
  5. Nombre el evento temporizador por medio de las propiedades y luego guarde su proceso: abra el menú Save ( ) y haga clic en Save.
  6. Haga click en el botón ( ) en la barra de herramientas del diseñador de procesos con el proceso para asegurarse de que el proceso definido es válido. El esquema de cualquier elemento con uno o múltiples errores de validación se vuelve naranja (consulte la Red Hat JBoss BPMS User Guide para obtener información sobre la funcionalidad de validación).
Para obtener mayor información sobre los elementos de procesos y sus propiedades consulte la JBoss BPMS User Guide.

6.4. Construcción e implementación

Antes de poder instanciar, es decir, ejecutar su proceso Hello World, necesita construir todo el proyecto e implementarlo en el servidor de ejecución:
  1. En el menú principal de la central empresarial vaya a AuthoringProject Authoring.
  2. En el explorador de proyectos ubique el proyecto Hello World.
  3. Abra el proyecto en el editor de proyectos: en el menú de perspectivas haga clic en ToolsProject Editor.
  4. Verifique que los detalles del proyecto estén correctos en el Project Screen y haga clic en el botón Build & Deploy en la esquina superior derecha de la vista de la pantalla del proyecto.
    The Build & Deploy button located in the upper left corner of the editor view

    Figura 6.2. Editor de proyectos con las siguientes propiedades del proyecto helloWorld

Aparecerá una notificación en verde en la parte superior de la pantalla informándole que el proyecto se ha construído e implementado en el servidor de ejecuciones y está disponible para instanciación.

6.5. Instanciación de procesos empresariales

Para crear una instancia del proceso Hello World, es decir, ejecutar el proceso empresarial, haga lo siguiente:
  1. Haga clic en Process ManagementProcess Definitions en el menú principal.
  2. En la pestaña Process Definitions que se presenta ubique el Hello World. Es posible que tenga que hacer clic en Refresh para que la implementación se pueda ver en la lista.
  3. Haga clic en el botón Start( ) al lado de la entrada de la definición del proceso y en la casilla Form haga clic en el botón play ( ) para confirmar que quiere instanciar el proceso.
    El proceso se instancia con el usuario que actualmente está en sesión como propietario del proceso y el formato del proceso se presenta (el formato puede servir para solicitar entrada de un usuario en la instanciación de procesos si está definido; consulte la Red Hat JBoss BPMS User Guide).
Se presenta la vista Process Instance Details con los detalles sobre la instancia del proceso iniciado. Aparece el mensaje Hello World! en la salida estándar, usualmente el emulador terminal en el que se inició el servidor. Luego la instancia del proceso espera por el evento temporizador. Haga clic en Views - Process Model para ver el estado actual de ejecución.
Diagrama de ejecución en tiempo real HelloWorld: el evento temporizador en ejecución

Figura 6.3. Diagrama de ejecución en tiempo real HelloWorld: el evento temporizador en ejecución

6.6. Cancelación de procesos empresariales

En este momento está ejecutando una instancia del proceso HelloWorld en el servidor de ejecución (siendo ejecutado). Puede chequear la vista Process Instances: para presentar la vista vaya a Process ManagementProcess Instances.
Desde aquí puede ver los detalles de cualquier instancia de procesos usando el botón de detalles ( ) y realizar acciones de administración básicas tal como enviar una señal a una instancia de proceso ( ) y cancelarla ( ).
Ya que la instancia del proceso HelloWorld está esperando por el evento temporizador, cancélela: haga clic en ( ) en la línea con la información sobre la instancia del proceso HelloWorld: la instancia desaparecerá de la lista de instancias de procesos activos y aparecerá en la lista de instancias Aborted.
Description

Figura 6.4. Instancias de procesos cancelados incluyendo la instancia del proceso HelloWorld

Capítulo 7. Reglas empresariales Hello World

Ya que BPMS viene con BRMS integrado, este capítulo proporciona una introducción a la manera en que funcionan las reglas empresariales y cómo se integran en BPMS.
Agregará una nueva tarea, una tarea de regla empresarial al proceso HelloWorld, el cual disparará una regla empresarial de un grupo de reglas empresariales particular.
Note que este es un caso de integración muy simple y en producción puede que necesite un concepto y técnicas más avanzadas tal como tablas de decisiones. Para mayor información sobre las reglas empresariales y BRMS consulte la Red Hat JBoss BRMS User Guide

7.1. Creación de la regla empresarial

Las reglas empresariales se definen como declaraciones cuando-entonces: cuando algo es verdadero entonces algo pasa (por ejemplo, cuando la persona es mayor de 18 años, pueden acceder el contenido particular). Las reglas empresariales se almacenan en archivos DRL.
Para definir la regla empresarial helloworldrule en el proyecto HelloWorld haga lo siguiente:
  1. En el Project Explorer seleccione la unidad organizacional helloworld, el repositorio helloworldrepo, el proyecto HelloWorld y el paquete default.

    Nota

    Asegúrese de seleccionar el paquete default. El seleccionar un paquete incorrecto causa que la implementación falle.
  2. Crear el archivo DRL:
    1. En el menú de perspectivas haga clic en New ItemDRL file.
    2. En la casilla Create new defina el nombre del recurso como helloworldrule y verifique que la ruta destino sea default://master@helloworldrepo/HelloWorld/src/main/resources.
    3. Haga clic en Aceptar.
  3. En el editor DRL que se presenta con el archivo helloworldrule.drl defina la regla:
    rule "helloworldrule"
    ruleflow-group "helloworldgroup"
    when 
    then
    	System.out.println("Hello World!");
    end
    
    Esta regla no define ninguna condición cuando, es decir que siempre será verdadera cuando se dispare (llamada a ejecutar) y se imprimirá la frase Hello World!.
  4. Haga clic en Save.
  5. Se presenta un campo Save this item. Ingrese el Check-in comment y haga clic en guardar.

    Nota

    El comentario de registro sería una descripción corta de la clase de cambio que realizó y se tiene que ingresar cada vez que se guarda un activo.

7.2. Agregación de la tarea de reglas empresariales

Una tarea de reglas empresariales es una tarea que dispara reglas que pertenecen a cierto grupo de flujo de reglas.
Para agregar una tarea de reglas empresariales a su proceso, haga lo siguiente:
  1. Abra su proceso empresarial en el diseñador de procesos: en Project Explorer seleccione el proyecto HelloWorld, el paquete org.jbpm, haga clic en BUSINESS PROCESSES y haga clic en el proceso HelloWorld.

    Nota

    Asegúrese de seleccionar el paquete org.jbpm. El seleccionar un paquete incorrecto causa que la implementación falle.
  2. En el diseñador de procesos empresariales que se presenta con el proceso helloworld, amplie la paleta Object Library con los elementos del proceso: haga clic en el botón con doble flecha ( ) en la esquina superior izquierda de la pestaña del diseñador de procesos empresariales.
  3. Amplie el menú Tasks y arrastre y deje caer la tarea de reglas empresariales a la derecha.
    Ajuste las conecciones de flujo para integrar la tarea en el flujo de trabajo.
  4. Seleccione la tarea de reglas empresariales y defina sus propiedades en el panel Properties:
    • Nombre: BusinessRule
    • Grupo de flujo de reglas: helloworldgroup
      La propiedad Ruleflow Group define el grupo de reglas que se deben disparar cuando se está ejecutando la tarea. En este ejemplo, solo una regla, la reglahelloworldgroup definida en el archivo helloworldrule.drl, está presente en el grupo helloworldgroup.
    El proceso helloworld con la tarea de reglas empresariales y sus propiedades

    Figura 7.1. El proceso helloworld con la tarea de reglas empresariales y sus propiedades

  5. Haga clic en el botón para guardar para mantener los cambios.

7.3. Construcción e implementación

Construya todo el proyecto e impleméntelo en el servidor de ejecución:
  1. En el menú principal de la central empresarial vaya a AuthoringProject Authoring.
  2. En el explorador de proyectos ubique el proyecto Hello World.
  3. Abra el proyecto en el editor de proyectos: en el menú de perspectivas haga clic en ToolsProject Editor.
  4. Verifique que los detalles del proyecto estén correctos en el Project Screen y haga clic en el botón Build & Deploy en la esquina superior derecha de la vista de la pantalla del proyecto.
    The Build & Deploy button located in the upper left corner of the editor view

    Figura 7.2. Editor de proyectos con las siguientes propiedades del proyecto helloWorld

Aparece una notificación en verde en la parte superior de la pantalla informándole que el proyecto se construyó e implementó en el servidor de ejecuciones y que está disponible para ser instanciado. Note que la versión anterior de la implementación helloWorld se substituye con la nueva versión con la tarea de la regla empresarial. Para mantener ambas implementaciones, cambie el número de la versión del proyecto en el editor de proyectos.

7.4. Instanciación de procesos empresariales

Para crear una instancia del proceso Hello World, es decir, ejecutar el proceso empresarial, haga lo siguiente:
  1. Haga clic en Process ManagementProcess Definitions en el menú principal.
  2. En la pestaña Process Definitions que se presenta ubique el Hello World. Es posible que tenga que hacer clic en Refresh para que la implementación se pueda ver en la lista.
  3. Haga clic en el botón Start( ) al lado de la entrada de la definición del proceso y en la casilla Form haga clic en el botón play ( ) para confirmar que quiere instanciar el proceso.
    El proceso se instancia con el usuario que actualmente está en sesión como propietario del proceso y el formato del proceso se presenta (el formato puede servir para solicitar entrada de un usuario en la instanciación de procesos si está definido; consulte la Red Hat JBoss BPMS User Guide).
Se presenta la vista Process Instance Details con los detalles sobre la instancia del proceso iniciado. Aparece el mensaje Hello World! en la salida estándar, usualmente el emulador terminal en el que se inició el servidor. Luego la instancia del proceso espera por el evento temporizador. Haga clic en Views - Process Model para ver el estado actual de ejecución.
Diagrama de ejecución en tiempo real HelloWorld: el evento temporizador en ejecución

Figura 7.3. Diagrama de ejecución en tiempo real HelloWorld: el evento temporizador en ejecución

Capítulo 8. BAM

8.1. Acceso al constructor de páneles de la suite BPM JBoss Red Hat

El constructor de páneles es la interfaz de usuario basada en red de la suite BPM JBoss Red Hat para monitoreo de actividades empresariales. Para acceder el constructor de páneles desde la central empresarial vaya a DashboardsProcess & Task Dashboards.
El pánel que se presenta proporciona estadísticas sobre los datos en tiempo de ejecución seleccionados a su izquierda. Puede crear su propio pánel en el constructor de páneles que se presenta al hacer clic en DashboardsBusiness Dashboards.

8.2. Monitorización de instancias

El constructor de páneles proporciona un pánel especial que le permite monitorear el estado de los datos en tiempo de ejecución (instancias de procesos y tareas) en su máquina de ejecución.
Para ver estos datos vaya a DashboardsProcess & Task Dashboard.
Pánel de tareas y procesos

Figura 8.1. Pánel de tareas y procesos

En el panel de la izquierda puede seleccionar una entidad para la cual presentar estadísticas. Las tablas y los datos a la derecha se actualizan de acuerdo con esto.

Capítulo 9. Estudio del desarrollador JBoss de Red Hat

Red Hat JBoss Developer Studio es el entorno de desarrollo integrado de JBoss (IDE del inglés integrated development environment) basado en Eclipse y disponible en el portal de soporte del cliente de Red Hat en https://access.redhat.com. Red Hat JBoss Developer Studio proporciona plug-ins con herramientas e interfaces para Red Hat JBoss BRMS y Red Hat JBoss BPM Suite. Estos plugins se basan en la versión de la comunidad de estos productos. Así que el plugin BRMS se llama el plugin Drools y el plugin de la suite BPM se llama plugin jBPM.
Consulte la documentación de Red Hat JBoss Developer Studio para ver las instrucciones de instalación y configuración.

9.1. Central de JBoss

Cuando se inicia por primera vez JBoss Developer Studio 7.0, se presenta la central de JBoss en la ventana principal del banco de trabajo. Desde la central de JBoss es posible crear nuevos proyectos seleccionando las opciones del menú bajo Start from scratch. Los proyectos de ejemplo se pueden iniciar seleccionando los enlaces bajo Start from a sample.
Central de JBoss

Figura 9.1. Central de JBoss

9.2. Instalación de los plugins del estudio del desarrollador JBoss

Los plugins Drools y jBPM para el estudio desarrollador JBoss están disponibles a través del sitio de actualización.

Procedimiento 9.1. Instalación del plugin del estudio desarrollador JBoss Drools y jBPM

  1. Inicie el estudio desarrollador JBoss.
  2. Seleccione HelpInstall New Software.
  3. Haga clic en Add para ingresar el menú Add Repository.
  4. Dele un nombre al sitio software junto al campo Name y agregue la siguiente url en el campo Location:https://devstudio.jboss.com/updates/7.0/integration-stack/
  5. Haga clic en OK
  6. Seleccione la funcionalidad JBoss Business Process and Rule Development de las opciones disponibles y haga clic en Next y luego Next de nuevo.
  7. Lea la licencia y acéptela seleccionando el botón apropiado y haga clic en Finish.
  8. Después de que la instalación de los plug-ins se haya completado, reinicie el estudio desarrollador JBoss.

9.3. Configuración del tiempo de ejecución Drools

Con el fin de utilizar el plugin BRMS JBoss con Red Hat JBoss Developer Studio es necesario establecer el tiempo de ejecución.
Un tiempo de ejecución es una colección de archivos jar que representan un lanzamiento específico del software y proporciona las bibliotecas que se necesitan para la compilación y ejecución de sus activos empresariales.
Extraiga los archivos jar de tiempo de ejecución que se encuentran en el archivador jboss-brms-engine.zip del archivador zip implementable genérico JBoss BRMS (no el archivador zip implementable EAP6) (disponible en el portal del cliente de Red Hat).

Procedimiento 9.2. Configuración del tiempo de ejecución BRMS

  1. Del menú JBoss Developer Studiot seleccione Window y haga clic en Preferences.
  2. Seleccione DroolsInstalled Drools Runtimes.
  3. Haga clic en Add...; proporcione un nombre para el nuevo tiempo de ejecución y haga clic en Browse para navegar al directorio en donde se encuentra el tiempo de ejecución. Haga clic en OK para registrar el tiempo de ejecución seleccionado en JBDS.
  4. Marca el tiempo de ejecución que usted ha creado como el tiempo de ejecución Drools predeterminado haciendo clic en la casilla al lado de este.
  5. Haga clic en OK. Si tiene proyectos existentes, una ventana de diálogo indicará que tiene que reiniciar JBoss Developer Studio para actualizar el tiempo de ejecución.

9.4. Configuración del tiempo de ejecución jBPM

Con el fin de utilizar el plugin jBPM con Red Hat JBoss Developer Studio es necesario establecer el tiempo de ejecución.
Un tiempo de ejecución es una colección de archivos jar que representan un lanzamiento específico del software.
Si descargó previamente el archivador zip implementable genérico de la suite BPM JBoss del portal del cliente de Red Hat, los archivos jars que componen el tiempo de ejecución se encuentran en el archivador jboss-bpms-engine.zip.

Procedimiento 9.3. Configuración del tiempo de ejecución jBPM

  1. Del menú JBoss Developer Studiot seleccione Window y haga clic en Preferences.
  2. Seleccione jBPMInstalled jBPM Runtimes.
  3. Haga clic en Add...; proporcione un nombre para el nuevo tiempo de ejecución y haga clic en Browse para navegar al directorio en donde se encuentra el tiempo de ejecución.
  4. Haga clic en OK, seleccione el nuevo tiempo de ejecución y haga clic en OK de nuevo . Si tiene proyectos existentes, una ventana de diálogo indicará que tiene que reiniciar JBoss Developer Studio para actualizar el tiempo de ejecución.

9.5. Configuración del servidor de la suite BPM JBoss

El estudio desarrollador JBoss se puede configurar para ejecutar el servidor de la suite BPM JBoss de Red Hat.

Procedimiento 9.4. Configuración del servidor

  1. Abra la vista jBPM seleccionando WindowOpen PerspectiveOther y seleccione Drools y haga clic en OK.
  2. Agregue la vista del servidor seleccionando WindowShow ViewOther... y seleccione ServerServers.
  3. Abra el menú del servidor haciendo clic con el botón derecho del ratón en el panel del servidor y seleccione NewServer.
  4. Defina el servidor seleccionando JBoss Enterprise MiddlewareJBoss Enterprise Application Platform 6.1+ y haciendo clic en Next.
  5. Establezca el directorio de inicio haciendo clic en el enlace en el botón Browse. Navegue hasta el directorio de instalación y selecciónelo para JBoss EAP 6.1.1, el cual tiene la suite BPM JBoss instalada.
  6. Proporcione un nombre para el servidor en el campo Name, asegúrese de que el archivo de configuración se establece como y haga clic en Finish.
El estudio desarrollador JBoss se puede configurar para conectarse a un repositorio de activos Git central. En el repositorio se almacenan las versiones de las reglas, modelos, funciones y procesos. Este repositorio Git ya debe estar definido por el banco de trabajo KIE.
Los usuarios pueden importar un repositorio local Git o pueden clonar un repositorio remoto Git.

Procedimiento 9.5. Importación de un repositorio local Git

  1. Inicie la suite BPM JBoss de Red Hat (si todavía no está ejecutando) seleccionando el servidor de la pestaña de servidores y haga clic en el ícono de inicio.
  2. Seleccione FileImport... y navegue a la carpeta Git. Abra la carpeta Git para seleccionar Projects from Git y haga clic en siguiente.
  3. Seleccione la fuente del repositorio Existing local repository y haga clic en siguiente.
    Detalles del repositorio Git

    Figura 9.2. Detalles del repositorio Git

  4. Seleccione el repositorio que se va a configurar de la lista de repositorios disponibles.
  5. Importe el proyecto como un proyecto general en la siguiente ventana y haga clic en siguiente. Déle nombre a este proyecto y haga clic en terminar.

Procedimiento 9.6. Clonación de un repositorio remoto Git

  1. Inicie la suite BPM JBoss de Red Hat (si todavía no está ejecutando) seleccionando el servidor de la pestaña de servidores y haga clic en el ícono de inicio.
  2. Al mismo tiempo inicie el servidor de la shell segura, si todavía no está ejecutando, usando el siguiente comando. Este comando es específico para Linux y Mac sólamente. En estas plataformas, si sshd ya se inició entonces este comando fallará y puede ignorar de manera segura este paso.
    /sbin/service sshd start
  3. Seleccione FileImport... y navegue a la carpeta Git. Abra la carpeta Git para seleccionar Projects from Git y haga clic en siguiente.
  4. Seleccione la fuente del repositorio Clone URI y haga clic en siguiente.
  5. Ingrese los detalles del repositorio Git en la siguiente ventana y haga clic en siguiente.
    Detalles del repositorio Git

    Figura 9.3. Detalles del repositorio Git

  6. Seleccione la rama que quiere importar en la siguiente ventana y haga clic en siguiente.
  7. Se le presentará la opción de definir el almacenamiento local para este proyecto. Ingrese (o seleccione) un directorio que no esté vacío, haga los cambios en la configuración y haga clic en siguiente.
  8. Importe el proyecto como un proyecto general en la siguiente ventana y haga clic en siguiente. Déle nombre a este proyecto y haga clic en terminar.

9.7. Creación de un proyecto Drools

Procedimiento 9.7. Creación de un nuevo proyecto Red Hat JBoss Developer Studio

  1. Del menú principal seleccione FileNewProject.
    Seleccione DroolsDrools Project y haga clic en Next.
  2. Ingrese un nombre para el proyecto en la casilla Project name: y haga clic en Next.

    Nota

    JBoss Developer Studio proporciona la opción para agregar un archivo de reglas HelloWorld de ejemplo al proyecto. Acepte esta opción predeterminada haciendo clic en Next para probar el proyecto de ejemplo en los siguientes pasos.
  3. Seleccione el tiempo de ejecución Drools (o use el predeterminado).
  4. Seleccione el código compatible con Drools 6.0.x. Ingrese un GroupID, un ArtifactID y la Version y haga clic en Finish.
  5. Para probar el proyecto, haga clic con el botón derecho del ratón en el archivo Java que contiene el método principal y seleccione Runrun asJava Application.
    La salida se presentará en la pestaña de la consola.

9.8. Creación de un proyecto jBPM

Procedimiento 9.8. Creación de un nuevo proyecto Red Hat JBoss Developer Studio

  1. Del menú principal seleccione FileNewProject.
    Seleccione jBPMjBPM Project y haga clic en Next.
  2. Ingrese un nombre para el proyecto en la casilla Project name: y haga clic en Next.

    Nota

    JBoss Developer Studio proporciona la opción para agregar un archivo de reglas HelloWorld de ejemplo al proyecto. Acepte esta opción predeterminada haciendo clic en Next para probar el proyecto de ejemplo en los siguientes pasos.
  3. Seleccione el tiempo de ejecución jBPM (o use el predeterminado).
  4. Seleccione generar código compatible con jBPM 6 o posteriores y haga clic en Finish.
  5. Para probar el proyecto, haga clic con el botón derecho del ratón en el archivo Java que contiene el método principal y seleccione Runrun asJava Application.
    La salida se presentará en la pestaña de la consola.

Capítulo 10. Planificador de recursos empresariales

El planificador de recursos empresariales está disponible como un avance técnico con la suite BPM JBoss de Red Hat. El planeador de recursos empresariales es una máquina ligera incluíble de planeación que optimiza los problemas de planeación. Ayuda a los programadores TM Java normales a resolver problemas de planeación de manera eficiente y combina heurística de optimización y metaheurística con cálculos muy eficientes.
El planificador ayuda a solucionar varios casos como los siguientes:
  • Empleados/lista de pacientes. En planificador ayuda a crear horarios para las enfermeras y mantiene registros de la administración de las camas de los pacientes.
  • Horarios educacionales. El planificador ayuda a programar clases, cursos, exámenes y presentaciones de conferencias.
  • Horarios del taller: El planificador mantiene registros de las cadenas de fabricación, planeación de colas de máquinas y planeación de tareas del personal.
  • Recorte de recursos: El planificador minimiza los desperdicios reduciendo el consumo de recursos tal como papel y acero.

10.1. Instalación del planificador de recursos empresariales

  1. Navegue al portal del cliente de Red Hat e inicie sesión con sus credenciales de usuario.
  2. Seleccione DownloadsRed Hat JBoss MiddlewareDownload Software.
  3. Del menú desplegable Products seleccione BPM Suite.
  4. Del menú desplegable Version seleccione la versión del producto 6.0.2.
  5. Seleccione Red Hat JBoss BPM Suite 6.0.2 Business Resource Planner y haga clic en Download.
  1. En la línea de comandos vaya hasta el directorio examples/.
  2. En un entorno Unix ejecute el siguiente comando:
    ./runExamples.sh
    En un entorno Windows ejecute el siguiente comando:
    ./runExamples.bat
  3. Escoja un ejemplo de la aplicación GUI de ejemplos que se abre y ejecútelo en su IDE favorito.

Apéndice A. Historial de revisiones

Historial de revisiones
Revisión 1.0.0-1Wed Aug 06 2014CS Builder Robot
Built from Content Specification: 22690, Revision: 684299

Aviso Legal

Copyright © 2014 Red Hat, Inc.
This document is licensed by Red Hat under the Creative Commons Attribution-ShareAlike 3.0 Unported License. If you distribute this document, or a modified version of it, you must provide attribution to Red Hat, Inc. and provide a link to the original. If the document is modified, all Red Hat trademarks must be removed.
Red Hat, as the licensor of this document, waives the right to enforce, and agrees not to assert, Section 4d of CC-BY-SA to the fullest extent permitted by applicable law.
Red Hat, Red Hat Enterprise Linux, the Shadowman logo, JBoss, OpenShift, Fedora, the Infinity logo, and RHCE are trademarks of Red Hat, Inc., registered in the United States and other countries.
Linux® is the registered trademark of Linus Torvalds in the United States and other countries.
Java® is a registered trademark of Oracle and/or its affiliates.
XFS® is a trademark of Silicon Graphics International Corp. or its subsidiaries in the United States and/or other countries.
MySQL® is a registered trademark of MySQL AB in the United States, the European Union and other countries.
Node.js® is an official trademark of Joyent. Red Hat Software Collections is not formally related to or endorsed by the official Joyent Node.js open source or commercial project.
The OpenStack® Word Mark and OpenStack logo are either registered trademarks/service marks or trademarks/service marks of the OpenStack Foundation, in the United States and other countries and are used with the OpenStack Foundation's permission. We are not affiliated with, endorsed or sponsored by the OpenStack Foundation, or the OpenStack community.
All other trademarks are the property of their respective owners.
Red Hat logoGithubredditYoutubeTwitter

Aprender

Pruebe, compre y venda

Comunidades

Acerca de la documentación de Red Hat

Ayudamos a los usuarios de Red Hat a innovar y alcanzar sus objetivos con nuestros productos y servicios con contenido en el que pueden confiar. Explore nuestras recientes actualizaciones.

Hacer que el código abierto sea más inclusivo

Red Hat se compromete a reemplazar el lenguaje problemático en nuestro código, documentación y propiedades web. Para más detalles, consulte el Blog de Red Hat.

Acerca de Red Hat

Ofrecemos soluciones reforzadas que facilitan a las empresas trabajar en plataformas y entornos, desde el centro de datos central hasta el perímetro de la red.

Theme

© 2026 Red Hat
Volver arriba