Administración y configuración
La Guía de administración y configuración para Red Hat JBoss BPM Suite
Resumen
Parte I. Introducción Copiar enlaceEnlace copiado en el portapapeles!
Capítulo 1. Modelo de procesos empresariales y notación Copiar enlaceEnlace copiado en el portapapeles!
1.1. Componentes Copiar enlaceEnlace copiado en el portapapeles!
Execution Engine- proporciona el entorno en tiempo de ejecución para procesos y reglas empresariales. Comprende una biblioteca de flujo de trabajo que se puede incluir en una aplicación web de usuario. El gestor del tiempo de ejecución es el objeto raíz y contiene los siguientes componentes:Runtime Engine- implementa el comportamiento esencial del lenguaje informático y es proporcionado por el gestor del tiempo de ejecución.Process Engine- es el entorno para la ejecución del modelo de procesos empresariales.Task Service- maneja los ciclos de vida de las tareas humanas.
Rule Engine- se puede utilizar con la máquina de procesos o sola.Rules Evaluation- ejecuta reglas empresariales en el grupo de hechos proporcionados.Complex Event Processing- aplica reglas empresariales en un flujo de eventos entrante.
Business Central- una aplicación basada en la red que accomoda herramientas para la creación de activos, administración y monitoreamiento proporcionando un entorno web integrado.Asset Repository- es la ubicación central para compartir (Almacén de conocimiento) para activos empresariales, procesos, reglas, formularios, etc. Los usuarios acceden a este repositorio por medio de la vista del Explorador de proyectos de la Central empresarial a través de → . Por defecto, el producto inicia un repositorio GIT local como su Repositorio de activos. Sin embargo se pueden agregar o borrar otros repositorios cuando sea necesario.Artifact Repository- es un repositorio basado en Maven para el almacenamiento de artefactos jar de proyectos.Execution Server- proporciona un entorno de ejecución para instancias de procesos empresariales y tareas.Business Activity Monitor- proporciona una vista personalizada sobre el rendimiento empresarial.
Nota
1.2. Proyecto Copiar enlaceEnlace copiado en el portapapeles!
pom.xml) con información sobre cómo construir el artefacto de salida. También contiene el archivo Descriptor de módulos, kmodule.xml, que contiene la configuración KIE Base y KIE Session para los activos en el proyecto.
1.3. Creación de un proyecto Copiar enlaceEnlace copiado en el portapapeles!
- Abra la perspectiva Autoría de proyectos: en el menú principal haga clic en → .
- En el Explorador de proyectos seleccione la unidad organizacional y el repositorio en donde quiere crear el proyecto.
- En el menú de perspectivas vaya a → .
- En la ventana Crear nuevo proyecto defina los detalles del proyecto:
- En el campo de texto Project ingrese el nombre del proyecto.
- El explorador actualiza para mostrar una ventana emergente del Asistente de proyecto nuevo.
- Defina los detalles sobre Configuración general del proyecto y Versión del artefacto del grupo para este nuevo proyecto. Estos parámetros están almacenados dentro del archivo de configuración Maven
pom.xml.- Nombre del proyecto: el nombre para el proyecto; por ejemplo
ProyectoHipoteca - Descripción del proyecto: la descripción del proyecto, la cual puede ser útil para propósitos de documentación del proyecto.
- ID del grupo: id del grupo del proyecto; por ejemplo
org.micompañia.commons - Id de artefacto: id único del artefacto en el grupo; por ejemplo
mimarcodetrabajo. Evite utilizar caracteres especiales que puedan generar un nombre inválido. - Id de la versión: versión del proyecto; por ejemplo
2.1.1
La vista Pantalla del proyecto se actualiza con los detalles del nuevo proyecto tal como se define en el archivo pom.xml. Note que puede cambiar entre archivos descriptores de proyectos en el menú desplegable con Configuración de proyectos y Configuración de la base de conocimiento y modifique su contenido.
1.4. Agregar dependencias Copiar enlaceEnlace copiado en el portapapeles!
- Abra el Editor de proyectos para el proyecto dado:
- En la vista Explorador de proyectos de la perspectiva
Autoría de proyectosabra el directorio del proyecto. - Haga clic en el botón
para abrir la vista del proyecto.
- En la vista Pantalla de proyectos, seleccione en la caja desplegable Parámetros del proyecto el ítem Dependencias.
- En la Pantalla de proyectos, haga clic en el botón para adicionar una dependencia Maven o haga clic en el botón para adicionar una dependencia del almacén de conocimientos (Repositorio de artefactos):
- Al agregar una dependencia Maven, un usuario debe definir el ID de grupo, el Id de artefacto y el ID de versión en la nueva hilera creada en la tabla de dependencia.
- Al agregar una dependencia desde el Almacén de conocimientos, seleccione la dependencia en el cuadro de diálogo: la dependencia será agregada a la tabla de dependencias.
- Para aplicar los diferentes cambios, las dependencias deben estar guardadas.
Aviso
Parte II. Configuración Copiar enlaceEnlace copiado en el portapapeles!
Capítulo 2. Configuración de la Central empresarial Copiar enlaceEnlace copiado en el portapapeles!
DEPLOY_DIRECTORY/business-central.war/WEB-INF/web.xml y los archivos relacionados, y si se implementa en Red Hat JBoss EAP 6, también en jboss-web.xml y jboss-deployment-structure.xml.
2.1. Control de acceso Copiar enlaceEnlace copiado en el portapapeles!
$JBOSS_HOME/standalone/deployments/business-central.war/WEB-INF/classes/userinfo.properties.
admin: administra el sistema JBoss BPM Suite y tiene todos los derechos para hacer cambios, incluida la habilidad de agregar y retirar usuarios del sistema.desarrollador: implementa el código requerido para el funcionamiento de procesos y tiene acceso a todo a excepción de tareas administrativas.analista: crea y diseña procesos y formas, inicia los procesos e implementa artefactos. Este rol es similar al del desarrollador, sin acceso a repositorios ni implementaciones.usuario: reclama, realiza e invoca acciones, (tales como, escalamiento, rechazo, etc.) sobre las tareas asignadas y no tiene acceso a las funciones de autoría.mánager: monitoriza el sistema y sus estadísticas y únicamente tiene acceso al panel.usuario empresarial: toma acción sobre tareas empresariales que se requieren para que los procesos avancen. Funciona principalmente con una lista de tareas.
$JBOSS_HOME/add-user.sh y cree un usuario de aplicación en el Reino de aplicaciones con sus roles respectivos.
Configuración de Workbench
$JBOSS_HOME/standalone/deployments/business-central.war/WEB-INF/classes/workbench-policy.propeties.
standalone.xml.
Autenticación en tareas humanas
UserGroupCallback para asignar tareas a usuarios.
Aviso
2.2. Configuración del perfil de la Central empresarial Copiar enlaceEnlace copiado en el portapapeles!
- Perfil total - el perfil predeterminado que se activa sin requerir ninguna configuración adicional (Servicios remotos de interfaz de usuario, p.ej., REST).
- Perfil del servidor de ejecución - inhabilita completamente los componentes de interfaz de usuario de la aplicación y permite únicamente acceso remoto. p.ej., la interfaz REST.
- Perfil de servidor de interfaz de usuario - inhabilita servicios remotos, p.ej., REST y permite únicamente acceso de interfaz de usuario para la aplicación.
Procedimiento 2.1. Configuración de perfiles de la Central empresarial
- Seleccione el
web.xmldeseado dentro de$BPMS_HOME/standalone/deployments/business-central.war/WEB-INF/. Se proporcionan los siguientes archivos.web.xml(predeterminado) para perfil totalweb-exec-server.xmlpara perfil de servidor de ejecuciónweb-ui-server.xmlpara perfil de servidor de interfaz de usuario
- Para activar un perfil diferente al perfil completo predeterminado, se debe renombrar el archivo web-<PROFILE>.xml como
web.xml. Los siguientes pasos demuestran una forma de posibilitar la ejecución del perfil de servidor:- Haga una copia de seguridad del archivo
web.xmldel perfil totalmv web.xml web-full.xml
$ mv web.xml web-full.xmlCopy to Clipboard Copied! Toggle word wrap Toggle overflow - Renombre el archivo
web-exec-server.xml:mv web-exec-server.xml web.xml
$ mv web-exec-server.xml web.xmlCopy to Clipboard Copied! Toggle word wrap Toggle overflow
- Inicie el servidor de aplicaciones con la propiedad de sistema adicional para instruir al gestor de perfiles para que active el perfil provisto-
Dorg.kie.active.profile=full- para activar perfil total o ignorar la propiedad por completoDorg.kie.active.profile=exec-server- para activar el perfil de servidor de ejecuciónDorg.kie.active.profile=ui-server- para activar el perfil de servidor de interfaz de usuario
2.3. Personalización de la aplicación Central empresarial Copiar enlaceEnlace copiado en el portapapeles!
- Pantalla de inicio de sesiónPuede personalizar los siguientes atributos de la pantalla de inicio de sesión de Central empresarial:
- La imagen de fondo
- El logotipo de la compañía
- El logotipo de la aplicación
- Encabezamiento de la aplicaciónPuede personalizar los siguientes atributos del encabezamiento de la aplicación de Central empresarial:
- El encabezamiento de Central empresarial que contiene el título y el logotipo
- Ventanas emergentes de ayudaPuede personalizar los siguientes atributos de las ventanas emergentes de ayuda de la pantalla de inicio
- Imágenes de ayuda de la pantalla de inicio
- El texto de la etiqueta
2.3.1. Personalización de la página de inicio de la Central empresarial Copiar enlaceEnlace copiado en el portapapeles!
Procedimiento 2.2. Cambo de imagen del fondo de la página de inicio de sesión de Central empresarial
- Inicie el servidor EAP y abra http://localhost:8080/business-central en el navegador.
- Copie la nueva imagen de fondo en el directorio
$EAP_HOME/standalone/deployments/business-central.war/imagesen su instalación JBoss BPM Suite. - Navegue en el directorio
$EAP_HOME/standalone/deployments/business-central.war/stylesy abra el archivologin-screen.cssen un editor. - En el archivo
login-screen.css, proporcione el sitio de la nueva imagen de fondo en el siguientes atributobackground-image.background-image: url("../images/login-screen-background.jpg");background-image: url("../images/login-screen-background.jpg");Copy to Clipboard Copied! Toggle word wrap Toggle overflow El atributobackground-imageapunta a la imagen predeterminadalogin-screen-background.jpg.Además de la imagen de fondo, usted puede modificar otros atributos tales como el tamaño de la imagen , la posición y el color del fondo en el archivologin-screen.css.
Procedimiento 2.3. Cambio del logotipo de la compañía y el logotipo del proyecto de la página de inicio en la Central empresarial
- Inicie el servidor EAP y abra http://localhost:8080/business-central en el navegador.
- Vaya al directorio
$EAP_HOME/standalone/deployments/business-central.war/imagesen su instalación JBoss BPM Suite. - Remplace la imagen predeterminada
login-screen-logo.pngpor una nueva. Este es el logotipo de la compañía que aparece en la esquina superior derecha de la página de inicio. - Remplace la imagen predeterminada
RH_JBoss_BPMS_Logo.pngRH_JBoss_BRMS_Logo.pngpor una nueva. Este es el logotipo del proyecto que aparece en la parte central izquierda de la página de inicio.
2.3.2. Personalización del encabezamiento de Central empresarial Copiar enlaceEnlace copiado en el portapapeles!
Procedimiento 2.4. Cambio del encabezamiento de la aplicación de Central empresarial
- Inicie el servidor EAP y abra http://localhost:8080/business-central en el navegador.
- Ingrese con sus credenciales a la aplicación de Central empresarial
- Copie la imagen de encabezamiento de la nueva aplicación al directorio
$EAP_HOME/standalone/deployments/business-central.war/banneren su instalación JBoss BPM Suite. - Abra el archivo
$EAP_HOME/standalone/deployments/business-central.war/banner/banner.htmlen el editor de texto. - En el archivo
banner.html, modifique la siguiente etiqueta <img> para proporcionar el nombre de su nueva imagen de encabezamiento:<img src="banner/logo.png"/>
<img src="banner/logo.png"/>Copy to Clipboard Copied! Toggle word wrap Toggle overflow La imagen predeterminada eslogo.png.
2.3.3. Personalización de las ventanas de ayuda de la pantalla de inicio de la Central empresarial Copiar enlaceEnlace copiado en el portapapeles!
$EAP_HOME/standalone/deployments/business-central.war/plugins contiene las páginas de pantallas de inicio y los archivos html correspondientes. Cada página de pantalla de inicio tiene el nombre de un archivo html, el cual contiene información sobre las imágenes y el texto que va a ser desplegado. Por ejemplo, la página de la pantalla de inicio authoring_perspective.splash.js apunta al archivo authoring_perspective.splash.html. El archivo authoring_perspective.splash.html contiene los nombres y ubicación de todas las imágenes que aparecen en la ayuda de inicio de la Perspectiva de autoría y también sus subtítulos. Usted puede personalizar las imágenes y los subtítulos correspondientes de las ventanas emergentes de la página de ayuda de la pantalla de inicio.
Procedimiento 2.5. Cambio de las imágenes y subtítulos emergentes de la página de ayuda de Central empresarial
- Inicie el servidor EAP y abra http://localhost:8080/business-central en el navegador.
- Ingrese con sus credenciales a la aplicación de Central empresarial
- Copie su nueva imagen o imágenes de la página de inicio en en directorio
$EAP_HOME/standalone/deployments/business-central.war/imagesen su instalación JBoss BPM Suite. - Abra en un editor de texto el archivo html correspondiente del directorio
$EAP_HOME/standalone/deployments/business-central.war/plugins. - Modifique el archivo html para apuntar a su nueva imagen de ayuda de página de inicio. Por ejemplo, para cambiar la primera imagen que aparece en la ayuda de inicio de la Perspectiva de autoría, modifique la etiqueta <img> en el archivo
authoring_perspective.splash.htmlpara agregar su nueva imagen:<img src="images/authoring_perspective1.png" alt="">
<img src="images/authoring_perspective1.png" alt="">Copy to Clipboard Copied! Toggle word wrap Toggle overflow La imagen predeterminada esauthoring_perspective1.png, la cual aparece en la primera página de la ayuda de inicio de Perspectiva de autoría. - Para cambiar el subtítulo de la imagen que aparece en la ayuda de inicio, modifique el contenido de las etiquetas <h4> y <p> por debajo de la etiqueta <img>:
<h4>Authoring</h4> <p>Modularized and customizable workbench</p>
<h4>Authoring</h4> <p>Modularized and customizable workbench</p>Copy to Clipboard Copied! Toggle word wrap Toggle overflow
2.4. Descriptores de implementación Copiar enlaceEnlace copiado en el portapapeles!
META-INF del kjar denominado kmodule.xml. Este archivo kmodule.xml está vacío por defecto.
kmodule.xml para construir la representación del tiempo de ejecución.
kmodule.xml. La presencia de estos descriptores es opcional y su implementación proseguirá sin ellos. Las propiedades que pueden establecerse mediante estos descriptores son únicamente de naturaleza técnica e incluyen metavalores de estrategia de tiempo de ejecución, la auditoría y la persistencia.
kie-deployment-descriptor.xml y colóquelo cerca de su archivo kmodule.xml en su carpeta META-INF. Puede cambiar esta ubicación predeterminada (y el nombre de archivo) al especificarlo como un parámetro de sistema:
-Dorg.kie.deployment.desc.location=file:/path/to/file/company-deployment-descriptor.xml
-Dorg.kie.deployment.desc.location=file:/path/to/file/company-deployment-descriptor.xml
2.4.1. Configuración del descriptor de implementación Copiar enlaceEnlace copiado en el portapapeles!
- nivel de servidor: el nivel principal y el que aplica a todos los kjars implementados en el servidor.
- Nivel kjar: le permite configurar descriptores sobre la base de un kjar.
- nivel de tiempo de implementación: descriptores que aplican durante la implementación de kjar.
Nota
NONE, pero el mismo modo es especificado como JPA en el nivel de kjarl, el modo real será JPA para dicho kjar. Si no se especifica nada para el modo persistencia en el descriptor de implementación ), se retrocederá a la configuración de nivel de servidor, la cual en este caso es NONE (o para JPA si no hay descriptor de implementación de nivel de servidor).
¿Puede usted sobrescribir esta conducta de modo de fusión jerarquía?
MERGE_COLLECTIONS. No obstante, usted puede cambiarlo (Sección 2.4.2, “Administración de los descriptores de implementación”) si no se ajusta a su entorno:
- KEEP_ALL: en este modo , todos loa valores superiores sobrescriben los valores de nivel inferior (los valores de nivel de servidor remplazan los valores kjar.)
- OVERRIDE_ALL: en este modo, todos los niveles inferiores sobrescriben todos los valores superiores (los valores kjar remplazan los valores de nivel de servidor)
- OVERRIDE_EMPTY: en este modo, todos los ítems de configuración non empty de los niveles inferiores, remplazan los de los niveles superiores, incluidos los que se representan como colecciones.
- MERGE_COLLECTIONS (PREDETERMINADO): en este modo, todos los ítems de configuración no vacíos del nivel inferior remplazan los de los niveles superiores (como en OVERRIDE_EMPTY), pero las propiedades de colección se fusionan (combinan).
¿Necesitaré proveer un descriptor de implementación completo para todos los kjar?
¿Qué puede configurar?
| Configuración | Entrada XML | Valores permisibles | Valor predeterminado |
|---|---|---|---|
| Nombre de la unidad de persistencia para datos de tiempo de ejecución | persistence-unit | Cualquier nombre de paquete válido de persistencia | org.jbpm.domain |
| Nombre de la unidad de persistencia para datos de auditoría | audit-persistence-unit | Cualquier nombre de paquete válido de persistencia | org.jbpm.domain |
| Modo de persistencia | persistence-mode | JPA, NONE | JPA |
| Modo de auditoría | audit-mode | JPA, JMS o NONE | JPA |
| Estrategia de tiempo de ejecución | runtime-strategy | SINGLETON, PER_REQUEST o PER_PROCESS_INSTANCE | SINGLETON |
| Lista de oyentes que van a ser registrados | event-listeners | Nombres de oyentes válidos como ObjectModel | Sin valor predeterminado |
| Lista de tareas que van a ser registradas | task-event-listeners | Nombres de oyentes válidos como ObjectModel | Sin valor predeterminado |
| Lista de manejadores de elementos de trabajo que van a ser registradas | work-item-handlers | Clases válidas del manejador de elementos dados como NamedObjectHandler | Sin valor predeterminado |
| Lista de variables globales a ser registradas | globals | Variables globales dadas como NamedObjectModel | Sin valor predeterminado |
| Las estrategias de Marshalling que van a ser registradas (para persistencia variables conectables) | marshalling-strategies | Clases ObjectModel válidas | Sin valor predeterminado |
| Roles requeridos que van a ser otorgados a los recursos del kjar | required-roles | Cadena de nombres de roles | Sin valor predeterminado |
| Entradas de entorno adicionales para la sesión de conocimientos | environment-entries | NamedObjectModel válido | Sin valor predeterminado |
| Opciones de configuración adicionales para la sesión de conocimientos | configuraciones | NamedObjectModel válido | Sin valor predeterminado |
Cómo proveer valores para colecciones basadas en ítems de configuración?
ObjectModel o NamedObjectModel. Ambos son similares y proveen definición del objeto para el tiempo de ejecución construido o creado, a excepción de los detalles de nombre de objeto NamedObjectModel que deben ser observados. Ambos tipos se definen mediante un identificador, parámetros opcionales y un 'resolver' (para resolver el objeto).
- identifier - define toda la información sobre el objeto, como por ejemplo el nombre de clase completo, el identificador de bean Spring o la expresión MVEL.
- parameters - parámetros opcionales que deben utilizarse durante las instancias de creación de objetos desde este modelo.
- resolver - identificador del resolver que será utilizado para crear instancias de objetos desde el modelo - (reflection, mvel o Spring).
ObjectModel, con el identificador com.mycompany.MyStrategy, el programa de resolución que es reflexión (los parámetros más fáciles y predeterminados que se requieren para que su estrategia funcione. La reflexión será utilizada para crear una instancia de esta estrategia mediante el nombre de clase completo que usted ya ha provisto como identificador.
<marshalling-strategy> <resolver>mvel</resolver> <identifier>new com.myCompany.CustomStrategy(runtimeManager)</identifier> </marshalling-strategy>
<marshalling-strategy>
<resolver>mvel</resolver>
<identifier>new com.myCompany.CustomStrategy(runtimeManager)</identifier>
</marshalling-strategy>
<marshalling-strategy> <resolver>spring</resolver> <identifier>customStrategy</identifier> </marshalling-strategy>
<marshalling-strategy>
<resolver>spring</resolver>
<identifier>customStrategy</identifier>
</marshalling-strategy>
2.4.2. Administración de los descriptores de implementación Copiar enlaceEnlace copiado en el portapapeles!
META-INF en el archivo Explorer. Haga clic en el archivo kie-deployment-descriptor.xml para editarlo de forma manual.
kie-deployment-descriptor.xml de inventario se genera con los valores predeterminados como se describió anteriormente.
Sobrescritura del comportamiento de modo de fusión jerárquico
- Establezca la propiedad del sistema org.kie.dd.mergemode a uno de estos valores. Este modo de fusión se convertirá en predeterminado para todos los kjars implementados en el sistema, a menos que usted lo sobrescriba en un nivel kjar a través del siguiente método.
- Al implementar una nueva unidad a través de Central empresarial ( → ) usted puede seleccionar que el modo de fusión sea utilizado para dicho kjar determinado.
- Cuando se implementa a través de la API REST, usted puede agregar el parámetro de la petición mergemode a la URL del comando a uno de estos modos a fin de establecer el modo de fusión para dicha implementación.
Restricción del acceso al motor Runtime
2.5. Manejo de políticas de sobrescritura de implementación Copiar enlaceEnlace copiado en el portapapeles!
false . Cámbiela a true para habilitar la sobrescritura de implementaciones con el mismo GAV proporcionándolo en el momento de inicio de su servidor (-Dorg.kie.override.deploy.enabled=true).
2.6. Extensión de Central empresarial Copiar enlaceEnlace copiado en el portapapeles!
Administración de complementos.
2.6.1. Administración de complementos Copiar enlaceEnlace copiado en el portapapeles!
Plugin Management al hacer clic en → . Verá la pantalla Plugin Explorer que enumera todos los complementos existentes en sus respectivas categorías: Perspective Plugin, Screen Plugin, Editor Plugin, Splashscreen Plugin y Dynamic Menu. Abra alguno de ellos y verá los complementos existentes en cada categoría, incluidos los que no se pueden modificar y que son generados por el sistema.
- Crear una pantalla
- Para crear una perspectiva (y agregarle la nueva pantalla)
- Cree un nuevo menú (y agréguele una nueva perspectiva)
- Apps (opcional)
Adición de una nueva pantalla
Nota
<div>My Hello World Screen</div>. Puede ser cualquier código HTML y usted puede usar los marcos de trabajo Angular y Knockout. Para fines de este ejemplo, no estamos utilizando ninguno de estos marcos de trabajo, pero si desea, puede seleccionarlos desde la sección desplegable Template (Plantilla).
main, on_close y on_open. Para esta demostración, seleccione on_open e ingrese lo siguiente: function () { alert('Hello World'); }
Adición de una nueva perspectiva
6 6 al lado derecho.
HelloWorldJS). Haga clic en el botón y luego en el botón
para guardar esta perspectiva. Ingrese HelloWorldPerspective, entre Home en el campo de nombre (y haga clic en el botón ), por último haga clic en el botón para terminar de guardar.
e ingrese el nombre de la perspectiva.
Adición de un nuevo menú
Hello World.
Trabajar con apps (opcional)
HelloWorldPerspective, ingresó la etiqueta Home. El directorio Apps predeterminado contiene un directorio único llamado Home con el cual usted asoció su perspectiva. Aquí es donde la encontrará cuando abra el directorio Apps. Ahora puede hacer clic para ejecutar la perspectiva.
2.6.2. JavaScript (JS) API para extensiones Copiar enlaceEnlace copiado en el portapapeles!
plugins de la Central empresarial webapp (por lo general: {INSTALL_DIR}/business-central.war/plugins/) o puede ser cargada mediante llamadas regulares JavaScript.
- API de perspectiva de registro: permite la creación de perspectivas. El ejemplo de abajo crea un panel mediante el método
registerPerspective:Copy to Clipboard Copied! Toggle word wrap Toggle overflow - La API del editor: le permite crear editores de forma dinámica y asociarlos con el tipo de archivo. El ejemplo de abajo, crea un editor de muestra y lo asocia con el tipo de archivo
filename.Además de los métodosCopy to Clipboard Copied! Toggle word wrap Toggle overflow on_startupyon_openvistos en el ejemplo anterior, la API expone los siguientes eventos de llamada para administrar el ciclo de vida del editor:Puede desplegar este editor a través de una plantilla html:- on_concurrent_update;
- on_concurrent_delete;
- on_concurrent_rename;
- on_concurrent_copy;
- on_rename;
- on_delete;
- on_copy;
- on_update;
- on_open;
- on_close;
- on_focus;
- on_lost_focus;
- on_may_close;
- on_startup;
- on_shutdown;
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - API PlaceManager: los métodos de esta API le permiten solicitar que Central empresarial despliegue un determinado componente asociado con un destino:
$goToPlace("componentIdentifier"); - API de complemento de registro: los métodos de esta API le permiten crear los complementos dinámicos (que serán transformados en pantallas de Central empresarial) a través de JSAPI.El complemento hace referencia a la plantilla
Copy to Clipboard Copied! Toggle word wrap Toggle overflow angular.sample.html:Un complemento puede ser agregado a los eventos de Central empresarial a través de una serie de llamadas de JavaScript:Copy to Clipboard Copied! Toggle word wrap Toggle overflow - on_concurrent_update;
- on_concurrent_delete;
- on_concurrent_rename;
- on_concurrent_copy;
- on_rename;
- on_delete;
- on_copy;
- on_update;
- on_open;
- on_close;
- on_focus;
- on_lost_focus;
- on_may_close;
- on_startup;
- on_shutdown;
- Registre la API de las pantallas de inicio: use los métodos en esta API para crear pantallas de inicio.
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - Una API de Sistema de archivos virtual (VFS): con esta API, usted puede leer y escribir un archivo guardado en el sistema de archivos mediante una llamada asíncrona.
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
2.7. Configuración de columnas de tablas Copiar enlaceEnlace copiado en el portapapeles!
Adición y remoción de columnas
en la esquina superior derecha superior. Al hacer clic en este botón se abre una lista de las columnas que pueden ser agregadas o retiradas de la tabla actual con una casilla de verificación cerca de cada columna:
Redimensionar columnas
Desplazamiento de columnas
.
.
Ordenamiento de columnas
Capítulo 3. Configuración en la línea de comandos Copiar enlaceEnlace copiado en el portapapeles!
kie-config-cli es una herramienta de configuración de línea de comandos que proporciona funcionalidades para administrar el repositorio del sistema desde la línea de comandos y puede servir en un modo conectado o desconectado.
Online mode(el predeterminado, recomendado) - en el inicio, la herramienta se conecta al repositorio Git mediante un servidor Git provisto porkie-wb. Todos los cambios son locales y se publican en la corriente principal de desarrollo únicamente después del comando push-changes. Use el comando 'exit' para publicar los cambios locales. Para descartar los cambios al salir, utilice el comando 'discard'.Offline mode(un estilo de instalador) - crea y manipula el repositorio del sistema directamente en el servidor (no opción 'discard').
- Vaya a Red Hat Customer Portal e ingrese.
- Haga clic en → .
- En la página Descargas de productos que se abre, haga clic en Red Hat JBoss BPM Suite.
- Desde el menú desplegable Versión, seleccione 6.1.
- En la tabla desplegada, navegue a la fila de Herramientas suplementarias y luego haga clic en Descargar.
kie-config-cli-6.VERSIÓN_MENOR-redhat-x-dist con el archivo kie-config-cli.sh.
3.1. Inicie la herramienta kie-config-cli en modo en línea Copiar enlaceEnlace copiado en el portapapeles!
- Para iniciar la herramienta kie-config-cli en modo en línea, navegue al directorio
kie-config-cli-6.VERSIÓN_MENOR-redhat-x-distdonde usted instaló la herramienta y luego ejecute el comando. - En un entorno Unix, ejecute:
./kie-config-cli.sh
./kie-config-cli.shCopy to Clipboard Copied! Toggle word wrap Toggle overflow En un entorno Windows, ejecute:./kie-config-cli.bat
./kie-config-cli.batCopy to Clipboard Copied! Toggle word wrap Toggle overflow
git://kie-wb-host:9148/system
3.2. Iniciar la herramienta kie-config-cli en modo fuera de línea Copiar enlaceEnlace copiado en el portapapeles!
- Navegue en el directorio
kie-config-cli-6.VERSIÓN_MENOR-redhat-x-distdonde instaló la herramienta. - En un entorno Unix, ejecute:
./kie-config-cli.sh offline
./kie-config-cli.sh offlineCopy to Clipboard Copied! Toggle word wrap Toggle overflow En un entorno Windows, ejecute:./kie-config-cli.bat offline
./kie-config-cli.bat offlineCopy to Clipboard Copied! Toggle word wrap Toggle overflow
.niogit). Si .niogit no existe, el valor de la carpeta puede quedar vacío y se creará una configuración totalmente nueva.
3.3. Comandos disponibles para la herramienta kie-config-cli Copiar enlaceEnlace copiado en el portapapeles!
add-deployment- agrega una nueva unidad de implementaciónadd-repo-org-unit- agrega un repositorio para la unidad organizativaadd-role-org-unit- agrega role(s) a una unidad organizativaadd-role-project- agrega role(s) a un proyectoadd-role-repo- agrega role(s) a un repositoriocreate-org-unit- crea una unidad organizativacreate-repo- crea un nuevo repositorio gitdiscard- no publica cambios locales, limpia los directorios temporales y cierra la herramientaexit- publica trabajo, limpia directorios temporales y cierra la herramientafetch-changes- extrae cambios del repositorio de la corriente principal de desarrollohelp- imprime los comandos disponibles con descripcioneslist-deployment- lista implelist-org-units- lista las unidades organizativas disponibleslist-repo- lista los repositorios disponiblespush-changes- envía los cambios al repositorio de la corriente de desarrollo principal (en modo en línea únicamente)remove-deployment- retira la implementación existenteremove-org-unit- retira la unidad organizativa existenteremove-repo- retira un repositorio existente desde config únicamenteremove-repo-org-unit- retira un repositorio de la unidad organizativaremove-role-org-unit- retira los role(s) de la unidad organizativaremove-role-project- retira role(s) de un proyectoremove-role-repo- retira role(s) de un repositorio
Capítulo 4. Migración Copiar enlaceEnlace copiado en el portapapeles!
- Migrar los datos primero: estos son sus activos empresariales.
- Luego, migrar sus procesos en tiempo de ejecución.
- Finalmente, convertir las llamadas API antiguas a nuevas una por una.
4.1. Migración de datos Copiar enlaceEnlace copiado en el portapapeles!
- Descargue la herramienta de migración iniciando sesión en el Portal del cliente de Red Hat y luego navegue a la sección de descargas de Software de Red Hat JBoss BPM Suite. Haga clic en Red Hat JBoss BPM Suite Migration Tool para descargar el archivador zip.
- Descomprima el archivador zip descargado en un directorio de su preferencia y navegue a este directorio en una línea de comandos. Este directorio contiene cuatro carpetas:
bin- contiene los scripts de inicio.jcr-exporter-libs- contiene las bibliotecas especificas para la parteexport-from-JCRde la migración.vfs-importer-libs- contiene las bibliotecas especificas para la parteimport-into-Gitde la migración.conf- contiene la configuraciónde la herramienta de migración global.
- Para bases de datos de producción, copie el controlador JDBC para la base de datos que es utilizada por parte del repositorio JCR dentro del directorio
jcr-exporter-libsde la herramienta de migración. - Ejecute el siguiente comando:
./bin/runMigration.sh -i <source-path> -o <destination-path> -r <repository-name>
./bin/runMigration.sh -i <source-path> -o <destination-path> -r <repository-name>Copy to Clipboard Copied! Toggle word wrap Toggle overflow
- <source-path> es una ruta a un repositorio JCR fuente.
- <desintation-path> es una ruta a un GIT VFS de destino. Esta carpeta no debe existir previamente.
- <repository-name> un nombre arbitrario para el nuevo repositorio.
-i también puede utilizar -h para imprimir un mensaje de ayuda y -f el cual forza una sobrescritura del directorio de salida, por lo tanto eliminando la nacesidad de borrar manualmente este directorio.
Importación del repositorio a la Central empresarial
Nota
Importación del repositorio en JDBS
- Inicie JBoss Developer Studio.
- Inicie el servidor de Red Hat JBoss BPM Suite (si todavía no está ejecutando) seleccionando el servidor de la pestaña de servidores ya haga clic en el ícono de inicio.
- Seleccione → y navegue a la carpeta Git. Abra la carpeta Git para seleccionar y haga clic en siguiente.
- Seleccione la fuente del repositorio y haga clic en siguiente.
- Seleccione el repositorio que se va a configurar de la lista de repositorios disponibles.
- 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.
4.2. Migración en tiempo de ejecución Copiar enlaceEnlace copiado en el portapapeles!
- Configure la propiedad del sistema
jbpm.v5.id.strategycomo verdadera en el archivostandalone.xmlde Boss BPM Suite :<property name="jbpm.v5.id.strategy" value="true"/>
<property name="jbpm.v5.id.strategy" value="true"/>Copy to Clipboard Copied! Toggle word wrap Toggle overflow - Cargue la KieSession tal como se muestra aquí:
KieSession ksession = JPAKnowledgeService.loadStatefulKnowledgeSession(sessionID, kbase, sessionConf, env);
KieSession ksession = JPAKnowledgeService.loadStatefulKnowledgeSession(sessionID, kbase, sessionConf, env);Copy to Clipboard Copied! Toggle word wrap Toggle overflow - Continue la ejecución normal del proceso usando los métodos KieSession:
ksession.signalEvent("SomeEvent", null);ksession.signalEvent("SomeEvent", null);Copy to Clipboard Copied! Toggle word wrap Toggle overflow
4.3. API y compatibilidad retrospectiva Copiar enlaceEnlace copiado en el portapapeles!
Migración a la versión 6.1
knowledge-api JAR ya no se soporta en la versión 6.1 y es reemplazada por las APIs que se encuentran en el archivo kie-api JAR que se introdujeron en JBoss BPM Suite 6.0.
knowledge-api.jar), por favor migre (reescriba) la s llamadas de la API a la nueva API KIE . Por favor tenga en cuenta que varias APIs han cambiado entre JBoss BRMS 5.x y JBoss BPM Suite 6.x, a saber la API de servicio de tareas y REST API.
Migración a la versión 6.0
knowledge-api construída para código compatible retrospectivamente. Esta API es la interfaz pública para trabajar con JBoss BPM Suite y JBoss BRMS y es compatible retrospectivamente.
4.4. Migración del servicio de tareas Copiar enlaceEnlace copiado en el portapapeles!
LocalHTWorkItemHandler.
Capítulo 5. Administración de datos Copiar enlaceEnlace copiado en el portapapeles!
5.1. Copias de seguridad Copiar enlaceEnlace copiado en el portapapeles!
- todos los descriptores de implementación personalizados (tales como,
web.xml,jboss-web.xml,jboss.xml) - todos los archivos de propiedades personalizadas
Nota
Considere hacer una copia de seguridad de todos los archivosbusiness-central.warydashbuilder.war.
5.2. Configurar índices Copiar enlaceEnlace copiado en el portapapeles!
Configurar índices de llaves externas
Configurar índices para Proceso y Panel de tareas
processinstancelog y bamtasksummary, deben estar indexadas .
5.3. Configuración de la base de datos Copiar enlaceEnlace copiado en el portapapeles!
- Postgres
- El siguiente enunciado sql sirve para crear una base de datos Postgres:
CREATE DATABASE dashbuilder WITH ENCODING='UTF8' OWNER=dashbuilder CONNECTION LIMIT=-1CREATE DATABASE dashbuilder WITH ENCODING='UTF8' OWNER=dashbuilder CONNECTION LIMIT=-1Copy to Clipboard Copied! Toggle word wrap Toggle overflow Nota
La codificación de la base de datos debe ser UTF8 - DB2
- La base de datos DB2 puede ser creada mediante el siguiente enunciado sql:
CREATE DATABASE dashb PAGESIZE 16384
CREATE DATABASE dashb PAGESIZE 16384Copy to Clipboard Copied! Toggle word wrap Toggle overflow Nota
El tamaño de la página predeterminada para sistemas DB2 es 4k, lo cual no es suficiente para el tamaño de columnas de la tabla de dashbuilder. El tamaño de la página debe ser forzado a 16384 como se muestra en la oración de arriba.
5.4. Modificación de la base de datos Copiar enlaceEnlace copiado en el portapapeles!
java:jboss/datasources/ExampleDS
java:jboss/datasources/ExampleDS
standalone.xml.
Nota
Procedimiento 5.1. Cambiar la base de datos
- Instalar el controlador de la base de datos en JBoss (consulte la documentación de controlador JBoss)
- Cree una base de datos vacía y la fuente de datos JBoss que se conecta al controlador de base de datos.
- Modifique el archivo
dashbuilder.war/WEB-INF/jboss-web.xml:Copy to Clipboard Copied! Toggle word wrap Toggle overflow - Remplace el valor del parámetro jndi-name por la ruta JNDI de la fuente de datos JBoss que usted ha creado.
- Modifique el archivo
dashbuilder.war/WEB-INF/jboss-deployment-structure.xml - Agregue el siguiente fragmento de configuración dentro de la etiqueta
deployment, dondejdbcDriverModuleNamees el nombre del módulo del controlador JBoss JDBC:<dependencies> <module name="jdbcDriverModuleName" /> </dependencies><dependencies> <module name="jdbcDriverModuleName" /> </dependencies>Copy to Clipboard Copied! Toggle word wrap Toggle overflow
5.5. Scripts DDL Copiar enlaceEnlace copiado en el portapapeles!
ddl-scripts. Los scripts de la base de datos se proporcionan para DB2, H2, MySQL5, Oracle, PostgreSQL y SQLServer.
Capítulo 6. Repositorio de activos Copiar enlaceEnlace copiado en el portapapeles!
Explorador de proyectos del entorno unificado de Red Hat JBoss BPM Suite.
6.1. Creación de un repositorio Copiar enlaceEnlace copiado en el portapapeles!
Importante
ADMIN puede crear un repositorio.
Procedimiento 6.1. Creación de un nuevo repositorio
- Abra la perspectiva Administración: en el menú principal haga clic en → .
- En el menú de perspectivas haga clic en → .
- Se presenta la ventana Create Repository.
Figura 6.1. Creación de un menú desplegable del repositorio
- Introduzca los detalles obligatorios:
- Nombre del repositorio.
Nota
Note que el nombre del repositorio debe ser un nombre de archivo válido. Evite utilizar un espacio o cualquier caracter especial que pueda generar un nombre de archivo inválido. - Seleccione una unidad organizacional en la que se creará el repositorio desde la opción desplegable Organizational Unit.
- Haga clic en Finish
6.2. Clonación de un repositorio Copiar enlaceEnlace copiado en el portapapeles!
Importante
ADMIN puede clonar un repositorio.
Procedimiento 6.2. Clonación de un repositorio
- Abra la perspectiva Administration.
- En el menú Repositories seleccione .
- Se presenta la ventana Clone Repository.
Figura 6.2. Clonación de un menú desplegable del repositorio
- En la ventana Clonar repositorio ingrese los detalles del repositorio:
- Ingrese el Nombre del repositorio Name que se va a utilizar como identificador del repositorio en el repositorio de activos y seleccione la Unidad organizacional a la que se debe agregar.
- Ingrese la URL del repositorio GIT:
- Para un repositorio local:
file:///ruta-al-repositorio/nombredelrepo - Para un repositorio remoto o preexistente:
git://nombredelhost/nombredelrepo
Nota
El protocolo de archivos solo se soporta para operaciones 'READ'. Las operaciones 'WRITE' no se soportan. - Si aplica, ingrese el Nombre de usuario y Contraseña a utilizar para autenticación al clonar el repositorio.
- Haga clic en Clonar.
- Se presenta un mensaje de confirmación con un botón OK, el cual le notifica al usuario que el repositorio se creó de manera exitosa. Haga clic en OK. El repositorio será indexado. Puede que algunas funcionalidades del banco de trabajo no estén disponibles hasta que se haya completado el indexado.
6.3. Borrado de un repositorio Copiar enlaceEnlace copiado en el portapapeles!
Borrado de un repositorio desde la Central empresarial
Procedimiento 6.3. Uso de la Central empresarial para borrar un repositorio
- Acceda el en la Central empresarial → .
- Seleccione del menú árbol a la izquierda.
- En el a la derecha, identifique el repositorio que se va a borrar de la lista de repositorios disponibles.
- Seleccione del menú desplegando y haga clic en el botón .
- Aparecerá el siguiente mensaje:
¿Está seguro de que quiere borrar el repositorio "<$RepositoryName>"? Es posible que algunos editores no puedan seguir operando si no se puede acceder a su contenido.
¿Está seguro de que quiere borrar el repositorio "<$RepositoryName>"? Es posible que algunos editores no puedan seguir operando si no se puede acceder a su contenido.Copy to Clipboard Copied! Toggle word wrap Toggle overflow Presione para borrar.
Borrado de un repositorio usando la herramienta kie-config-cli
kie-config-cli por medio del comando remove-repo.
kie-config-cli consulte Capítulo 3, Configuración en la línea de comandos.
Borrado de un repositorio usando el REST API
DELETE. Esta llamada depende de que el usuario haya creado una sesión HTTP autenticada antes de emitir este comando.
Ejemplo 6.1. Borrado de un repositorio usando curl
curl -H 'Accept: application/json' -H 'Content-Type: application/json' -X DELETE 'localhost:8080/business-central/rest/repositories/REPOSITORY_NAME'
curl -H 'Accept: application/json' -H 'Content-Type: application/json' -X DELETE 'localhost:8080/business-central/rest/repositories/REPOSITORY_NAME'
6.4. Administración de activos Copiar enlaceEnlace copiado en el portapapeles!
Nota
kiemgmt.
Repositorios administrados y no administrados
Ramas administradas
Estructura del repositorio
kiemgmt le aparecerá una tarea de usuario en esta lista de tareas para revisar los activos que se están promoviendo. Este usuario puede pedir esta tarea y decidir el promover todos, algunos o ninguno de los activos. El proceso subyacente utilizará cherry-pick para guardar los cambios seleccionados por el usuario en una rama de lanzamiento. Este usuario también puede solicitar otra revisión de estos activos y este proceso se puede repetir múltiples veces hasta que todos los activos estén listos para lanzamiento. El flujo para este proceso se puede ver a continuación:
Aviso
release
6.5. Repositorio Maven Copiar enlaceEnlace copiado en el portapapeles!
- Construcciones
- Documentación
- Informes
- Dependencias
- Lanzamientos
- SCMs
- Distribución
- Local: se refiere a un repositorio local en donde todas las dependencias del proyecto se almacenan y se encuentra con la instalación actual en la carpeta predeterminada como "m2". Es un caché de las descargas remotas y también contiene los artefactos de construcción temporal que todavía no se han lanzado.
- Remoto: se refiere a cualquier otro tipo de repositorio que se pueda acceder por medio de una variedad de protocolos tal como file:// o http://. Estos repositorios se pueden encontrar en una ubicación remota establecida por un tercero para la descarga de artefactos o un repositorio interno establecido en un archivo o servidor HTTP, utilizado para compartir arterfactos privados entre los equipos de desarrollo para administrar lanzamientos internos.
6.6. Configuración de una implementación en un repositorio Nexus remoto Copiar enlaceEnlace copiado en el portapapeles!
distributionManagement al archivo pom.xml de su proyecto tal como se demuestra en el código de ejemplo a continuación.
snapshotRepository se utiliza cuando se agrega el calificador -SNAPSHOT al número de la versión actual del proyecto. En otros casos se utiliza el repositorio especificado en el elemento repository.
settings-security.xml usando una contraseña maestra. Por defecto, este archivo se encuentra en la carpeta ~/.m2 a menos de que usted haya cambiado su ubicación modificando la propiedad del sistema kie.maven.settings.custom.
pom.xml.
6.7. Configuración del sistema Copiar enlaceEnlace copiado en el portapapeles!
Procedimiento 6.4. Cambio de las propiedades del sistema
- Modifique el archivo
$JBOSS_HOME/domain/configuration/host.xml - Ubique el servidor de elementos XML que pertenece al main-server-group y agregue la propiedad del sistema. Por ejemplo:
<system-properties> <property name="org.uberfire.nio.git.dir" value="..." boot-time="false"/> ... </system-properties>
<system-properties> <property name="org.uberfire.nio.git.dir" value="..." boot-time="false"/> ... </system-properties>Copy to Clipboard Copied! Toggle word wrap Toggle overflow
org.uberfire.nio.git.dir: ubicación del directorio .niogit. Predeterminado: directorio de trabajoorg.uberfire.nio.git.daemon.enabled: activa/desactiva el demonio GIT. Predeterminado: verdaderoorg.uberfire.nio.git.daemon.host: Si el demonio GIT está activado entonces usa esta propiedad como el identificador del host local. Predeterminado: localhostorg.uberfire.nio.git.daemon.port: Si el demonio GIT está activado entonces usa esta propiedad como el número de puerto. Predeterminado: 9418org.uberfire.nio.git.ssh.enabled: activa/desactiva el demonio SSH. Predeterminado: verdaderoorg.uberfire.nio.git.ssh.host: Si el demonio SSH está activado entonces usa esta propiedad como el identificador host local. Predeterminado: localhostorg.uberfire.nio.git.ssh.port: Si el demonio SSH está activado entonces usa esta propiedad como el número del puerto. Predeterminado: 8001org.uberfire.nio.git.ssh.cert.dir: La ubicación del directorio.securityen donde se almacenarán los certificados locales. Predeterminado: directorio de trabajoorg.uberfire.metadata.index.dir: La ubicación de la carpeta.indexpara Lucene. Predeterminado: directorio de trabajoorg.uberfire.cluster.id: Nombre del clúster Helix, por ejemplo: kie-clusterorg.uberfire.cluster.zk: cadena de conecxión a Zookeeper. Tiene el formato:host1:port1,host2:port2,host3:port3. Por ejemplo:localhost:2188.org.uberfire.cluster.local.id: id único del nodo del clúster Helix. Note que ':' es reemplazado con '_'. Por ejemplo: node1_12345.org.uberfire.cluster.vfs.lock: nombre del recurso definido en el clúster Helix, por ejemplo: kie-vfsorg.uberfire.cluster.autostart: retrasa el uso del clúster VFS hasta que la aplicación se inicie completamente para evitar conflictos cuando todos los miembros del clúster crean clones locales. Predeterminado: falsoorg.uberfire.sys.repo.monitor.disabled: desactiva el monitor de configuración (no lo desactive a menos de que sepa lo que está haciendo). Predeterminado: falsoorg.uberfire.secure.key: contraseña secreta utilizada por el cifrado de la contraseña. Predeterminado: org.uberfire.adminorg.uberfire.secure.alg: algoritmo cifrado utilizado por el cifrado de la contraseña. Predeterminado: PBEWithMD5AndDESorg.guvnor.m2repo.dir: lugar en donde se almacenará la carpeta del repositorio Maven. Predeterminado: directorio-de-trabajo/repositorios/kieorg.kie.example.repositories: carpeta desde donde se clonarán los repositorios de demostración. Es necesario haber obtenido y ubicado en esta carpeta los repositorios de demostración. Esta propiedad del sistema tiene precedencia sobre las propiedades org.kie.demo y org.kie.example. ŕedeterminado: no se utiliza.org.kie.demo: habilita la clonación externa de una aplicación de demostración desde GitHub. Esta propiedad del sistema tiene precedencia sobre org.kie.example. Predeterminado: verdadero.org.kie.example: habilita la estructura de ejemplo compuesta por el repositorio, la unidad organizacional y el proyecto. Predeterminado: falso
Capítulo 7. Proceso de exportación e importación Copiar enlaceEnlace copiado en el portapapeles!
7.1. Creación de una definición de proceso Copiar enlaceEnlace copiado en el portapapeles!
- Abra la perspectiva de autoría de proyectos ( → ).
- En
Project Explorer( → ), navegue al proyecto en el que desea crear la definición del proceso (en la vista Proyecto, seleccione el repositorio respectivo y el proyecto en la lista desplegable; en la vista Repository, navegue al directorioREPOSITORIO/PROYECTO/src/main/resources/).Nota
Se recomienda que cree sus recursos, incluyendo sus definiciones de procesos, en un paquete de un Proyecto para permitir el importar recursos y su uso de referencias. Para crear un paquete, haga lo sguiente:- En la vista de Repositorio del Project Explorer, navegue el directorio
REPOSITORIO/PROYECTO/src/main/resources/. - Vaya a → .
- En el cuadro de diálogo Nuevo recurso, defina el nombre del paquete y verifique la ubicación del paquete en el repositorio.
- En el menú de perspectivas vaya a →
- En el cuadro de diálogo Nuevos procesos, ingrese el nombre del proceso y haga clic en . Espere hasta que aparezca el editor del proceso con el diagrama del proceso.
7.2. Importación de una definición de procesos Copiar enlaceEnlace copiado en el portapapeles!
- En el Explorador de proyectos, seleccione un Proyecto y el paquete respectivo al cual quiere importar la definición del Proceso.
- Cree un nuevo Proceso empresarial en el cual trabajar y para hacer esto vaya a → .
- En la barra de herramientas del Diseñador de procesos haga clic en el ícono Importar
en la barra de herramientas del editor y seleccione el formato de la definición de procesos importados. Note que usted debe seleccionar para sobrescribir la definición del proceso existente con el fin de importar.
- Desde la ventana de Importación, ubique el archivo de procesos y haga clic en .
Figura 7.1. Ventana de importación
7.3. Importación de jPDL 3.2 a BPMN2 Copiar enlaceEnlace copiado en el portapapeles!
Figura 7.2. Migrar jPDL 3.2 a BPMN2
Figura 7.3. Migrate al cuadro de diálogo BPMN2
Importante
7.4. Exportación de un proceso Copiar enlaceEnlace copiado en el portapapeles!
Procedimiento 7.1. Exportación de un proceso empresarial
- Abra la perspectiva Autoría de proyectos: en el menú principal haga clic en → .
- Selecciones el proceso empresarial que debe ser exportado, para verlo en el Diseñador de procesos.
- Haga clic en el botón (
) de la barra de herramientas del diseñador del proceso y seleccione Ver fuentes del proceso desde las opciones desplegables.
- Se desplegará la ventana de Fuentes de procesos
- Haga clic en el botón Download BPMN2 y guarde el proceso empresarial en la ubicación deseada.
Parte III. Integración Copiar enlaceEnlace copiado en el portapapeles!
Capítulo 8. Implementación de artefactos de Red Hat JBoss BPM Suite para el repositorio l S-RAMP Copiar enlaceEnlace copiado en el portapapeles!
8.1. Implementación de artefactos de Red Hat JBoss BPM Suite para el repositorio S-RAMP mediante Maven Copiar enlaceEnlace copiado en el portapapeles!
pom.xml como se muestra a continuación:
- Para clonar el repositorio Git, donde usted ha guardado el proyecto BPM Suite, ejecute el siguiente comando :
git clone http://localhost:8001/REPOSITORY_NAME
git clone http://localhost:8001/REPOSITORY_NAMECopy to Clipboard Copied! Toggle word wrap Toggle overflow - En la línea de comandos, desplácese a la carpeta que contiene el proyecto.
- Siga las instrucciones en la Red Hat JBoss Fuse Service Works 6 Development Guide, Volume 3: Governance, sección Implementación en S-RAMP. Use la URL del ejemplo de abajo:Con estos parámetros, las implementaciones Maven se envían directamente al repositorio S-RAMP mediante la API API . Observe que los artefactos agregados al repositorio S-RAMP con un tipo de artefacto basado en el tipo Maven del proyecto. Puede sobrescribir esta conducta, si agrega un parámetro de solicitud a la URL del repositorio en el archivo
Copy to Clipboard Copied! Toggle word wrap Toggle overflow pom.xml. Por ejemplo:El ejemplo anterior hace que el artefacto Maven se cargue con el artefacto S-RAMP de KieJarArchive.Copy to Clipboard Copied! Toggle word wrap Toggle overflow - Arregle el complemento Maven en el archivo
pom.xmly agréguele una dependencia como sigue en caso de que el proyecto no contenga tablas de decisión.Si el proyecto contiene tablas de decisión, use esta dependencia para kie-maven-plugin en su lugar:Copy to Clipboard Copied! Toggle word wrap Toggle overflow Copy to Clipboard Copied! Toggle word wrap Toggle overflow - Ejecute una implementación limpia mediante el siguiente comando:.
mvn -s sramp-settings.xml deploy
mvn -s sramp-settings.xml deployCopy to Clipboard Copied! Toggle word wrap Toggle overflow
Nota
settings.xml. Para obtener más información sobre las credenciales, consulte Red Hat JBoss Fuse Service Works (FSW) documentación sobre autenticación.
8.2. La implementación de artefactos de Red Hat JBoss BPM Suite para el repositorio Modelo de artefactos de repositorio SOA, S-RAMP, mediante la interfaz gráfica de usuario. Copiar enlaceEnlace copiado en el portapapeles!
- Navegue a http://localhost:8080/s-ramp-ui/. Si la interfaz de usuario ha sido configurada para ejecutarse desde el nombre de dominio, sustituya
localhostpara el nombre de dominio. Por ejemplo http://www.example.com:8080/s-ramp-ui/. - Haga clic en .
- En la sección Administrar artefactos, seleccione .
- Localice el archivo kie que desea implementar. En el cuadro de diálogo que se abre, rellene
KieJarArchivecomo el tipo y seleccione . - La implementación luego crea estas entradas en el repositorio S-RAMP:
KieJarArchive, desde el cual se deriva:KieXmlDocument(Si el archivo contienekmodule.xml)BpmnDocument(Si el archivo contiene definicionesbpmn)DroolsDocument(Si el archivo contiene definicionesdrl)
Capítulo 9. Integración de Red Hat JBoss BPM Suite con Red Hat JBoss Fuse Copiar enlaceEnlace copiado en el portapapeles!
features.xml: uno provisto por funcionalidades principales de JBoss BPM Suite y JBoss BRMS, las cuales definen las funcionalidades OSGi que pueden implementarse en JBoss Fuse, y otro que provee soporte adicional para la integración con SwitchYard y Camel.
Nota
Importante
drools-karaf-features-6.2.0.Final-redhat-6-BZ1232486-features.xml provee las funcionalidades principales de JBoss BPM Suite y JBoss BRMS.
- drools-common
- drools-module
- drools-templates
- drools-decisiontable
- drools-jpa
- kie
- kie-ci
- kie-spring
- kie-aries-blueprint
- jbpm-commons
- jbpm-human-task
- jbpm
- droolsjbpm-hibernate
- h2
| Funcionalidad | Caso de uso |
|---|---|
drools-module | Use el motor JBoss BRMS para evaluación de reglas, sin requerir persistencia, procesos o tablas de decisión. |
drools-jpa | Use el motor JBoss BRMS para evaluación de reglas con persistencia y transacciones, pero sin las tablas de procesos o decisión. La funcionalidad drools-jpa ya existe incluye drools-module, sin embargo necesitará instalar la funcionalidad droolsjbpm-hibernate o verificar si está instalado un paquete Hibernate compatible. |
drools-decisiontable | Use el motor JBoss BRMS con tablas de decisión. |
jbpm | Use el motor JBoss BPM Suite (o el motor JBoss BRMS con procesos). La funcionalidad drools-jpa ya incluye drools-module drools-jpa. Usted deberá instalar la funcionalidad droolsjbpm-hibernate o verificar si está instalado un paquete Hibernate compatible. |
jbpm and jbpm-human-task | Use the JBoss BPM Suite (o el motor JBoss BRMS con procesos) con Human Task.. |
Jars de motor de base y kie-ci. | Use JBoss BRMS o JBoss BPM Suite con KieScanner (KIE-CI) para descargar los kJAR desde el repositorio Maven. |
kie-spring | Use integración KIE-Spring. |
kie-spring and kie-aries-blueprint. | Use KIE-Aries-Blueprint integration. |
org/jboss/integration/fuse/karaf-features/1.0.0.redhat-620137/karaf-features-1.0.0.redhat-620137-features.xml:
- fuse-bxms-switchyard-common-knowledge
- fuse-bxms-switchyard-rules
- fuse-bxms-switchyard-bpm
- kie-camel
- jbpm-workitems-camel
installDir/etc/org.ops4j.pax.url.mvn.cfg.
9.1. Instalación y actualización de funcionalidades de integración de base Copiar enlaceEnlace copiado en el portapapeles!
drools-karaf-features-6.2.0.Final-redhat-6-features.xml), necesita retirarlas y asociar los archivos antes de intalar el archivo features.xml más reciente.
Procedimiento 9.1. Retiro de una instalación drools-karaf-features
- Inicie la consola Fuse mediante:
./installDir/bin/fuse
$ ./installDir/bin/fuseCopy to Clipboard Copied! Toggle word wrap Toggle overflow - Desinstale las funcionalidades anteriores o apps que utilizó en el archivo
features.xmlanterior. Por ejemplo:JBossFuse:karaf@root> features:uninstall drools-module JBossFuse:karaf@root> features:uninstall jbpm JBossFuse:karaf@root> features:uninstall kie-ci
JBossFuse:karaf@root> features:uninstall drools-module JBossFuse:karaf@root> features:uninstall jbpm JBossFuse:karaf@root> features:uninstall kie-ciCopy to Clipboard Copied! Toggle word wrap Toggle overflow - Busque referencias de lotes utilizando drools/kie/jbpm y retírelos:
list -t 0 -s | grep drools list -t 0 -s | grep kie list -t 0 -s | grep jbpm
list -t 0 -s | grep drools list -t 0 -s | grep kie list -t 0 -s | grep jbpmCopy to Clipboard Copied! Toggle word wrap Toggle overflow Para retirar los lotes:karaf@root> osgi:uninstall <BUNDLE_ID>
karaf@root> osgi:uninstall <BUNDLE_ID>Copy to Clipboard Copied! Toggle word wrap Toggle overflow - Remueva la url drools-karaf-features anterior:
karaf@root> features:removeurl mvn:org.drools/drools-karaf-features/6.2.0.Final-redhat-<VERSION>/xml/features
karaf@root> features:removeurl mvn:org.drools/drools-karaf-features/6.2.0.Final-redhat-<VERSION>/xml/featuresCopy to Clipboard Copied! Toggle word wrap Toggle overflow - Reinicie Fuse
- Agregue el archivo de nuevas funcionalidades
karaf@root> features:addurl mvn:org.drools/drools-karaf-features/6.2.0.Final-redhat-6-BZ1232486/xml/features
karaf@root> features:addurl mvn:org.drools/drools-karaf-features/6.2.0.Final-redhat-6-BZ1232486/xml/featuresCopy to Clipboard Copied! Toggle word wrap Toggle overflow - Instale las funcionalidades:
karaf@root> features:install ...
karaf@root> features:install ...Copy to Clipboard Copied! Toggle word wrap Toggle overflow
drools-karaf-features:
Procedimiento 9.2. Instale las funcionalidades principales de JBoss BPM Suite y JBoss BRMS
- Descargue e instale la corrección.
- Descargue
jboss-brms-6.1.1-BZ-1232486.zip. - Descomprímalo.
- Navegue al directorio descomprimido
BZ-1232486. - Ejecute el siguiente comando de consola:
mvn org.apache.maven.plugins:maven-install-plugin:2.5.2:install-file -Dfile=drools-karaf-features-6.2.0.Final-redhat-6-BZ1232486-features.xml -DgroupId=org.drools -DartifactId=drools-karaf-features -Dversion=6.2.0.Final-redhat-6-BZ1232486 -Dpackaging=xml -Dclassifier=features
$ mvn org.apache.maven.plugins:maven-install-plugin:2.5.2:install-file -Dfile=drools-karaf-features-6.2.0.Final-redhat-6-BZ1232486-features.xml -DgroupId=org.drools -DartifactId=drools-karaf-features -Dversion=6.2.0.Final-redhat-6-BZ1232486 -Dpackaging=xml -Dclassifier=featuresCopy to Clipboard Copied! Toggle word wrap Toggle overflow
- Configure los repositorios requeridos
- Modifique el archivo
installDir/etc/org.ops4j.pax.url.mvn.cfgen su instalación JBoss Fuse y agregue la siguiente entrada a la variableorg.ops4j.pax.url.mvn.repositories, tenga en cuenta que las entradas deben ir separadas por ‘, \’:- http://maven.repository.redhat.com/techpreview/all/@id=bxms-product-repo
- Inicie JBoss Fuse:
./installDir/bin/fuse
$ ./installDir/bin/fuseCopy to Clipboard Copied! Toggle word wrap Toggle overflow - Agregue una referencia al archivo de funcionalidades de base al ejecutar el siguiente comando de consola:
JBossFuse:karaf@root> features:addurl mvn:org.drools/drools-karaf-features/6.2.0.Final-redhat-6-BZ1232486/xml/features
JBossFuse:karaf@root> features:addurl mvn:org.drools/drools-karaf-features/6.2.0.Final-redhat-6-BZ1232486/xml/featuresCopy to Clipboard Copied! Toggle word wrap Toggle overflow - Ahora podrá instalar las funcionalidades provistas por este archivo al ejecutar, por ejemplo, el siguiente comando de consola:
JBossFuse:karaf@root> features:install drools-module
JBossFuse:karaf@root> features:install drools-moduleCopy to Clipboard Copied! Toggle word wrap Toggle overflow
9.2. Instalación de funcionalidades de integración adicionales Copiar enlaceEnlace copiado en el portapapeles!
Importante
Procedimiento 9.3. Integración de SwitchYard y Camel
- Agregue una referencia al archivo de funcionalidades para integración adicional con SwitchYard y Camel al ejecutar el siguiente comando de consola:
JBossFuse:karaf@root> features:addurl mvn:org.jboss.integration.fuse/karaf-features/1.0.0.redhat-620137/xml/features
JBossFuse:karaf@root> features:addurl mvn:org.jboss.integration.fuse/karaf-features/1.0.0.redhat-620137/xml/featuresCopy to Clipboard Copied! Toggle word wrap Toggle overflow - Ahora podrá instalar las funcionalidades para integración SwitchYard y Camel mediante la ejecución, por ejemplo, del siguiente comando de consola:
JBossFuse:karaf@root> features:install fuse-bxms-switchyard-rules
JBossFuse:karaf@root> features:install fuse-bxms-switchyard-rulesCopy to Clipboard Copied! Toggle word wrap Toggle overflow
9.3. Instalación de aplicaciones aplicaciones de inicio rápido de integración JBoss Fuse Copiar enlaceEnlace copiado en el portapapeles!
org/jboss/integration/fuse/quickstarts/karaf-features/1.0.0.redhat-620137/karaf-features-1.0.0.redhat-620137-features.xml:
- fuse-bxms-switchyard-quickstart-bpm-service
- fuse-bxms-switchyard-quickstart-remote-invoker
- fuse-bxms-switchyard-quickstart-rules-camel-cbr
- fuse-bxms-switchyard-quickstart-rules-interview
- fuse-bxms-switchyard-quickstart-rules-interview-container
- fuse-bxms-switchyard-quickstart-rules-interview-dtable
- fuse-bxms-switchyard-demo-library
- fuse-bxms-switchyard-demo-helpdesk
installDir/etc/org.ops4j.pax.url.mvn.cfg.
Procedimiento 9.4. Instalación de la aplicación Quickstart
- Agregue una referencia al archivo de funcionalidades mediante la ejecución del siguiente comando de consola:
JBossFuse:karaf@root> features:addurl mvn:org.jboss.integration.fuse.quickstarts/karaf-features/1.0.0.redhat-620137/xml/features
JBossFuse:karaf@root> features:addurl mvn:org.jboss.integration.fuse.quickstarts/karaf-features/1.0.0.redhat-620137/xml/featuresCopy to Clipboard Copied! Toggle word wrap Toggle overflow - Ahora puede instalar las aplicaciones Quickstart provistas por este archivo de funcionalidades mediante la ejecución, por ejemplo, del siguiente comando de consola:
JBossFuse:karaf@root> features:install fuse-bxms-switchyard-quickstart-bpm-service
JBossFuse:karaf@root> features:install fuse-bxms-switchyard-quickstart-bpm-serviceCopy to Clipboard Copied! Toggle word wrap Toggle overflow
Procedimiento 9.5. Descarga e instalación de los archivos Quickstart ZIP.
- Descarga del archivo ZIP de la aplicación Quickstart.
- Desempaque el contenido del directorio de inicios rápidos en su directorio
installDir/quickstartsdirectory. - Desempaque el contenido del directorio del sistema en su directorio
installDir/system.
9.3.1. Prueba de su primera aplicación Quickstart Copiar enlaceEnlace copiado en el portapapeles!
Procedimiento 9.6. Prueba de su aplicación Quickstart
- Inicie JBoss Fuse:
./installDir/bin/fuse
$ ./installDir/bin/fuseCopy to Clipboard Copied! Toggle word wrap Toggle overflow - Instale e inicie switchyard-bpm-service mediante la ejecución del siguiente comando de consola:
JBossFuse:karaf@root> features:install fuse-bxms-switchyard-quickstart-bpm-service
JBossFuse:karaf@root> features:install fuse-bxms-switchyard-quickstart-bpm-serviceCopy to Clipboard Copied! Toggle word wrap Toggle overflow Nota
Todas las funcionalidades dependientes especificadas por el archivo de funcionalidades de aplicaciones serán instaladas de forma automática. - Envíe una solicitud de servicio web para invocar la puerta de enlace SOAP.
- Abra una ventana de terminal y navegue al directorio Quickstart asociado que fue desempacado desde el archivo ZIP de la aplicación Quickstart (en este caso, switchyard-bpm-service).
- Ejecute el siguiente comando:
mvn clean install
$ mvn clean installCopy to Clipboard Copied! Toggle word wrap Toggle overflow Nota
Requerirá los siguientes repositorios configurados en su archivosettings.xml:- http://maven.repository.redhat.com/techpreview/all/
- http://repository.jboss.org/nexus/content/repositories/public/
- Ejecute el siguiente comando:
mvn exec:java -Pkaraf
$ mvn exec:java -PkarafCopy to Clipboard Copied! Toggle word wrap Toggle overflow
- Usted recibirá la siguiente respuesta:
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
Capítulo 10. Integración con Spring Copiar enlaceEnlace copiado en el portapapeles!
10.1. Configuración de Red Hat JBoss BPM Suite con Spring Copiar enlaceEnlace copiado en el portapapeles!
jboss-bpms-engine.zip y se llama kie-spring-VERSION-redhat-MINORVERSION.jar.
Como una máquina de procesos auto administrada
RuntimeManager, se administra internamente una sincronización perfecta entre la máquina de procesos y el servicio de tareas y el usuario final no tiene que tocar el código interno para que estos dos funcionen juntos.
Como servicio de tarea compartida
TaskService, tiene mayor flexibilidad al configurar la instancia del servicio de tarea ya que es independiente del RuntimeManager. Una vez configurado luego el RuntimeManager lo utiliza cuando se requiere.
org.kie.spring.factorybeans.RuntimeEnvironmentFactoryBean. Esta clase de fábrica es la responsable de producir instancias del RuntimeEnvironment que son consumidas por el RuntimeManager al ser creadas. A continuación puede ver ilustrado un RuntimeEnvironment configurado con el gestor de entidades, gestor de transacciones y los recursos para la clase org.kie.spring.factorybeans.RuntimeEnvironmentFactoryBean:
- DEFAULT - configuración predeterminada (la más común) para RuntimeManager
- EMPTY - entorno completamente vació para ser rellenado manualmente
- DEFAULT_IN_MEMORY - igual a DEFAULT pero sin persistencia de motor de tiempo de ejecución
- DEFAULT_KJAR - igual a DEFAULT pero activo de conocimientos se toman del KJAR identificado por releaseid o GAV
- DEFAULT_KJAR_CL - construido directamente desde classpath, que consta del descriptor kmodule.xml
- knowledgeBase
- activos
- releaseId
- groupId, artifactId, versión
entity manager factory y transaction manager. A continuación puede ver ilustrado un RuntimeManager de ejemplo para org.kie.spring.factorybeans.RuntimeManagerFactoryBean:
<bean id="runtimeManager" class="org.kie.spring.factorybeans.RuntimeManagerFactoryBean" destroy-method="close"> <property name="identifier" value="spring-rm"/> <property name="runtimeEnvironment" ref="runtimeEnvironment"/> </bean>
<bean id="runtimeManager" class="org.kie.spring.factorybeans.RuntimeManagerFactoryBean" destroy-method="close">
<property name="identifier" value="spring-rm"/>
<property name="runtimeEnvironment" ref="runtimeEnvironment"/>
</bean>
Capítulo 11. Integración CDI Copiar enlaceEnlace copiado en el portapapeles!
11.1. Integración CDI Copiar enlaceEnlace copiado en el portapapeles!
- Gestor de entidad y fábrica de gestor de entidades
- llamada de grupo de usuario para tareas humanas
- proveedor de identidad para pasar información de usuario autenticada para los servicios
deployments/business-central.war/WEB-INF/beans.xml puede ser configurado para cambiar los parámetros actuales de la nueva implementación usergroupcallback.
Nota
org.jbpm.services.task.identity.JAASUserGroupCallbackImpl es apenas un ejemplo para demonstrar los parámetros del servidor de aplicaciones independiente de lo que en realidad es (LDAP, DB, etc).
Capítulo 12. Persistencia Copiar enlaceEnlace copiado en el portapapeles!
Nota
- Estado de la sesión: este incluye el Id de sesión, la fecha de la última modificación, los datos de sesión que la reglas empresariales necesitarían para evaluación, estado de las tareas del temporizador.
- Estado de la instancia del proceso: este incluye el id de la instancia del proceso, el id del processo, la fecha de la última modificación, la fecha de la última lectura, fecha de inicio de la instancia del proceso, datos del tiempo de ejecución (el estado de ejecución incluyendo el nodo que se está ejecutando, los valores de las variables, etc.) y los tipos de eventos.
- Estado del tiempo de ejecución del objeto de trabajo: este incluye el id del objeto de trabajo, fecha de creación, nombre, id de la instancia del proceso y el estado del objeto de trabajo mismo.
12.1. Sesión Copiar enlaceEnlace copiado en el portapapeles!
SessionInfo. Estas persisten el estado de la sesión KIE del tiempo de ejecución y almacenan los siguientes datos:
| Campo | Descripción | Nullable |
|---|---|---|
|
ID
|
llave primaria
|
falso
|
|
lastmodificationdate
|
última vez guardado en el almacén de datos
|
N/A
|
|
rulesbytearray
|
grupo de datos binario con estado de sesión (blob binario)
|
falso
|
|
startdate
|
inicio de la sesión
| |
|
optlock
|
número de la versión utilizado para bloquear el valor para el bloqueo optimista
| |
12.2. Instancia del proceso Copiar enlaceEnlace copiado en el portapapeles!
ProcessInstanceInfo, las cuales persisten el estado de una instancia de proceso en tiempo de ejecución y almacenan los siguientes datos:
| Campo | Descripción | Nullable |
|---|---|---|
|
instanceid
|
llave primaria
|
falso
|
|
lastmodificationdate
|
última vez guardado en el almacén de datos
|
N/A
|
|
lastreaddate
|
última lectura desde el almacén de datos
|
N/A
|
|
processid
|
El ID del proceso sobre el cual se basa la instancia
|
falso
|
|
processinstancebytearray
|
grupo de datos binario con estado de instancia del proceso( blob binario)
|
falso
|
|
startdate
|
Fecha de inicio de la instancia del proceso
| |
|
optlock
|
número de la versión utilizado para bloquear el valor para el bloqueo optimista
| |
|
estado
|
Estado de la instancia del proceso
|
falso
|
ProcessInstanceInfo tiene una relación 1:N con la entidad EventTypes.
EventTypes contiene los siguientes datos:
| Campo | Descripción | Nullable |
|---|---|---|
|
instanceid
|
referencia a la instancia de proceso (llave foránea a la
processinstanceinfo)
|
falso
|
|
elemento
|
campo de texto relacionado a un evento por el cual ha pasado una instancia de proceso
| |
Soporte de bloqueo pesimista
12.3. Objetos de trabajo Copiar enlaceEnlace copiado en el portapapeles!
workiteminfo, las cuales persisten el estado de la instancia del objeto de trabajo especifico en el tiempo de ejecución y almacena los siguientes datos:
| Campo | Descripción | Nullable |
|---|---|---|
|
workitemid
|
llave primaria
|
falso
|
|
nombre
|
nombre del objeto de trabajo
| |
|
processinstanceid
|
id de la instancia del proceso padre
|
falso
|
|
estado
|
número entero que representa el estado del objeto de trabajo
|
falso
|
|
optlock
|
número de la versión utilizado para bloquear el valor para el bloqueo optimista
| |
|
workitembytearray
|
grupo de datos binario con el estado del objeto de trabajo (blob binario
)
|
falso
|
|
creationDate
|
sello de fecha en el que se creó el objeto de trabajo
|
falso
|
12.4. Configuración de persistencia Copiar enlaceEnlace copiado en el portapapeles!
12.4.1. Configuración de persistencia Copiar enlaceEnlace copiado en el portapapeles!
JBPMHelper después de crear una sesión o utilizando el JPAKnowledgeService para crear su sesión. La última opción proporciona mayor flexibilidad mientras que JBPMHelper tiene un método para crear una sesión y usa un archivo de configuración para configurar esta sesión.
12.4.2. Configuración de la persistencia usando JBPMHelper Copiar enlaceEnlace copiado en el portapapeles!
- Defina su aplicación para que utilice un constructor de sesión JBPMHelper apropiado:
KieSession ksession = JBPMHelper.newKieSession(kbase);KieSession ksession = JBPMHelper.loadKieSession(kbase, sessionId);
- Configure la persistencia en el archivo
jBPM.properties.Ejemplo 12.1. Un archivo jBPM.properties de ejemplo con persistencia para la base de datos H2 en memoria
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
JBPMHelper.startH2Server(); y regístrela con la máquina usando la llamada de método JBPMHelper.setupDataSource();.
12.4.3. Configuración de la persistencia usando JPAKnowledgeService Copiar enlaceEnlace copiado en el portapapeles!
- Defina su aplicación para utilizar la sesión de conocimiento creada por JPAKnowledgeService:
- Defina la sesión con base en una base de conocimiento, una configuración de la sesión de conocimiento y un entorno. El entorno debe contener una referencia a su fábrica del gestor de entidades:
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - Defina la sesión con base en un id de sesión específico.
// recree la sesión desde la base de datos usando el sessionId ksession = JPAKnowledgeService.loadKieSession(sessionId, kbase, null, env );
// recree la sesión desde la base de datos usando el sessionId ksession = JPAKnowledgeService.loadKieSession(sessionId, kbase, null, env );Copy to Clipboard Copied! Toggle word wrap Toggle overflow
- Configure la persistencia en el archivo
META-INF/persistence.xml: configure JPA para que utilice Hibernate y la base de datos respectiva.La información sobre cómo configurar la fuente de datos en su servidor de aplicaciones debe estar disponible en la documentación que va junto con el servidor de aplicaciones. Para encontrar mayor información para JBoss Enterprise Application Platform, consulte la Administration and Configuration Guide para este producto.Ejemplo 12.2. Un archivo persistence.xml de ejemplo con persistencia para una fuente de datos H2
jdbc/jbpm-dsCopy to Clipboard Copied! Toggle word wrap Toggle overflow
JBPMHelper.startH2Server(); y regístrela con la máquina usando la llamada de método JBPMHelper.setupDataSource();.
Nota
Capítulo 13. Transacciones Copiar enlaceEnlace copiado en el portapapeles!
13.1. Transacciones Copiar enlaceEnlace copiado en el portapapeles!
13.2. Definición de transacciones Copiar enlaceEnlace copiado en el portapapeles!
- Registre el gestor de transacciones en su entorno.
Ejemplo 13.1. Codifique con el registro del gestor de transacciones
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - Inicialice la KieSession:
// get the KieSession RuntimeManager manager = RuntimeManagerFactory.Factory.get().newPerProcessInstanceRuntimeManager(environment); RuntimeEngine runtime = manager.getRuntimeEngine(ProcessInstanceIdContext.get()); KieSession ksession = runtime.getKieSession();
// get the KieSession RuntimeManager manager = RuntimeManagerFactory.Factory.get().newPerProcessInstanceRuntimeManager(environment); RuntimeEngine runtime = manager.getRuntimeEngine(ProcessInstanceIdContext.get()); KieSession ksession = runtime.getKieSession();Copy to Clipboard Copied! Toggle word wrap Toggle overflow - Defina el gestor de transacciones en
jndi.properties.Ejemplo 13.2. Definición del gestor de transacciones Bitronix en jndi.properties
java.naming.factory.initial=bitronix.tm.jndi.BitronixInitialContextFactory
java.naming.factory.initial=bitronix.tm.jndi.BitronixInitialContextFactoryCopy to Clipboard Copied! Toggle word wrap Toggle overflow Nota
Para usar un gestor de transacciones JTA diferente, modifique hibernate.transaction.manager_lookup_class, la propiedad de gestor de transacciones, en el archivopersistence.xmlpara cargar su gestor de transacciones.Ejemplo 13.3. JBoss Transaction Manager se establece como el gestor de transacciones
<property name="hibernate.transaction.manager_lookup_class" value="org.hibernate.transaction.JBossTransactionManagerLookup"/>
<property name="hibernate.transaction.manager_lookup_class" value="org.hibernate.transaction.JBossTransactionManagerLookup"/>Copy to Clipboard Copied! Toggle word wrap Toggle overflow - Defina el inicio y el final de la transacción.
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
13.3. Contenedor de transacciones administradas Copiar enlaceEnlace copiado en el portapapeles!
org.jbpm.persistence.jta.ContainerManagerTransactionManager. Esto se debe a que la implementación predeterminada del gestor de transacciones en JBoss BPM Suite se basa en la clase UserTransaction para obtener el estatus de transacciones. Sin embargo, algunos servidores de aplicaciones en un modo CMT no permiten el acceso a la instancia UserTransaction desde JNDI.
ContainerManagedTransactionManager espera que la transacción esté siempre activa (retornando ACTIVE al método getStatus()).
Nota
Configuración del gestor de transacciones
ContainerManagedTransactionManager, se debe insertar en el entorno antes de crear o cargar una sesión:
Environment env = EnvironmentFactory.newEnvironment();
env.set(EnvironmentName.ENTITY_MANAGER_FACTORY, emf);
env.set(EnvironmentName.TRANSACTION_MANAGER, new ContainerManagedTransactionManager());
env.set(EnvironmentName.PERSISTENCE_CONTEXT_MANAGER, new JpaProcessPersistenceContextManager(env));
Environment env = EnvironmentFactory.newEnvironment();
env.set(EnvironmentName.ENTITY_MANAGER_FACTORY, emf);
env.set(EnvironmentName.TRANSACTION_MANAGER, new ContainerManagedTransactionManager());
env.set(EnvironmentName.PERSISTENCE_CONTEXT_MANAGER, new JpaProcessPersistenceContextManager(env));
persistence.xml . Por ejemplo, si utiliza IBM WebSphere:
<property name="hibernate.transaction.factory_class" value="org.hibernate.transaction.CMTTransactionFactory"/> <property name="hibernate.transaction.manager_lookup_class" value="org.hibernate.transaction.WebSphereExtendedJTATransactionLookup"/>
<property name="hibernate.transaction.factory_class" value="org.hibernate.transaction.CMTTransactionFactory"/>
<property name="hibernate.transaction.manager_lookup_class" value="org.hibernate.transaction.WebSphereExtendedJTATransactionLookup"/>
Disposición de KSession en un CMT
dispose()). Al hacerlo, causará excepciones al completar la transacción ya que el motor del proceso necesita limpiar el estado después de que la invocación haya terminado.
org.jbpm.persistence.jta.ContainerManagedTransactionDisposeCommand's execute() method. Using this command ensures that the ksession will be disposed when the transaction is actually complete.
afterDisposal de la transacción en lugar de ejecutarla directamente. Si no hay ninguna transacción activa, ksession se suprimirá inmediatamente.
Capítulo 14. Registro Copiar enlaceEnlace copiado en el portapapeles!
- Instancias de procesos como
processinstancelog - Instancia de elementos como
nodeinstancelog - Instancia de variables como
variableinstancelog
| Campo | Descripción | Nullable |
|---|---|---|
|
ID
|
La llave primaria de la entidad de registro
|
No
|
|
end_date
|
La fecha de terminación de la instancia del proceso
|
Sí
|
|
processid
|
El nombre (ID) del proceso subyacente
|
Sí
|
|
processinstanceid
|
El ID de la instancia del proceso
|
No
|
|
start_date
|
La fecha de inicio de la instancia del proceso
|
Sí
|
|
estatus
|
El estatus de la instancia del proceso
|
Sí
|
|
parentProcessInstanceId
|
El ID de la instancia del proceso de la instancia del proceso padre si es el caso
|
Sí
|
|
resultado
|
El resultado de la instancia del proceso (detalles sobre la terminación del proceso como un código de error)
|
Sí
|
| Campo | Descripción | Nullable |
|---|---|---|
|
ID
|
La llave primaria de la entidad de registro
|
No
|
|
log_date
|
La fecha del evento
|
Sí
|
|
nodeid
|
El ID del nodo del elemento del proceso subyacente
|
Sí
|
|
nodeinstanceid
|
El ID de la instancia de nodo
|
Sí
|
|
nodename
|
El nombre del nodo subyacente
|
Sí
|
|
processid
|
El ID del nodo del proceso subyacente
|
Sí
|
|
processinstanceid
|
El ID de la instancia del proceso padre
|
No
|
|
tipo
|
El tipo del evento (
0 = enter event, 1 = exit event)
|
No
|
| Campo | Descripción | Nullable |
|---|---|---|
|
ID
|
La llave primaria de la entidad de registro
|
No
|
|
log_date
|
La fecha del evento
|
Sí
|
|
processid
|
El nombre (ID) del proceso subyacente
|
Sí
|
|
processinstanceid
|
El ID de la instancia del proceso
|
No
|
|
valor
|
El valor de la variable en el momento de registro
|
Sí
|
|
variableid
|
El id de la variable tal como se define en la definición del proceso
|
Sí
|
|
variableinstanceid
|
El id de la instancia de la variable
|
Sí
|
|
resultado
|
El resultado de la instancia del proceso (detalles sobre la terminación del proceso como un código de error)
|
Sí
|
14.1. Registro de eventos en la base de datos Copiar enlaceEnlace copiado en el portapapeles!
- Mapee las clases de registro a la fuente de datos de manera que la fuente de datos dada acepte las entradas de registro. En Red Hat JBoss EAP, modifique las propiedades de la fuente de datos en el archivo
persistence.xml.Ejemplo 14.1. Las clases ProcessInstanceLog, NodeInstanceLog y VariableInstanceLog habilitadas para processInstanceDS
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - Registre un gestor de registro en su sesión Kie.
Ejemplo 14.2. Importar los gestores de registro
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Ejemplo 14.3. Registrar un gestor de registro en una sesión Kie
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - Opcionalmente, llame al método
addFilteren el gestor de registros para filtrar información irrelevante. Solo la información aceptada por todos los filtros aparece en la base de datos. - Las clases del gestor de registros se pueden ver en la Vista de auditoría:
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
14.2. Funcionalidad logback Copiar enlaceEnlace copiado en el portapapeles!
logback para configuración de registros.
Nota
slf4j-nop y slf4j-simple son ideales para un entorno ligero.
14.3. Configuración de registros Copiar enlaceEnlace copiado en el portapapeles!
logback.xml en business-central.war/WEB-INF/classes/logback.xml. Para establecer el nivel de registro del paquete org.drools como "depurar" para registros verbosos necesita agregar la siguiente línea al archivo:
- org.guvnor
- org.jbpm
- org.kie
- org.slf4j
- org.dashbuilder
- org.uberfire
- org.errai
- etc...
log4j, el log4j.xml lo puede encontrar en business-central.war/WEB-INF/classes/log4j.xml y se puede configurar de la siguiente manera:
Nota
Capítulo 15. Localización y personalización Copiar enlaceEnlace copiado en el portapapeles!
15.1. Idiomas disponibles Copiar enlaceEnlace copiado en el portapapeles!
- Inglés de Estados Unidos (
en_US) - Español (
es_ES) - Japonés (
ja_JP) - Chino (
zh_CN) - Portugués (
pt_BR) - Francés (
fr_CA) - Alemán (
de_DE)
Nota
15.2. Cambio de parámetros de idioma Copiar enlaceEnlace copiado en el portapapeles!
Cambio de idioma de la interfaz de usuario en Central empresarial.
http://localhost:8080/business-central/?locale=pt_BR
Cambio de idioma de la interfaz de usuario en Dashbuilder
- Inicie sesión en el panel de construcción después de que el servidor haya iniciado exitosamente navegando a http://localhost:8080/dashbuilder en un navegador.
- Seleccione el idioma de su elección mediante un clic en los parámetros regionales disponibles en el centro superior de la interfaz de usuario Dashbuilder para cambiar el idioma.
Configuración del idioma de la interfaz de usuario predetermianda en Dashbuilder
Procedimiento 15.1. Configuración del idioma predeterminado en Francés
- Navegue a
jboss-eap-6.1/standalone/configurationy defina lo siguiente en el archivostandalone.xml.<system-properties> <property name="org.jboss.dashboard.LocaleManager.installedLocaleIds" value="en,es,de,fr,ja,pt,zh"/> <property name="org.jboss.dashboard.LocaleManager.defaultLocaleId" value="fr"/> </system-properties><system-properties> <property name="org.jboss.dashboard.LocaleManager.installedLocaleIds" value="en,es,de,fr,ja,pt,zh"/> <property name="org.jboss.dashboard.LocaleManager.defaultLocaleId" value="fr"/> </system-properties>Copy to Clipboard Copied! Toggle word wrap Toggle overflow - El idioma predeterminado de la interfaz de usuario del panel de construcción ahora está configurado como francés.
Definición de los parámetros regionales instalados en Dashbuilder
Procedimiento 15.2. Definición del parámetro regional instalado
- Navegue a
jboss-eap-6.1/standalone/configurationy defina lo siguiente en el archivostandalone.xml.<system-properties> <property name="org.jboss.dashboard.LocaleManager.installedLocaleIds" value="en,es,de,fr,ja,pt"/> <property name="org.jboss.dashboard.LocaleManager.defaultLocaleId" value="fr"/> </system-properties><system-properties> <property name="org.jboss.dashboard.LocaleManager.installedLocaleIds" value="en,es,de,fr,ja,pt"/> <property name="org.jboss.dashboard.LocaleManager.defaultLocaleId" value="fr"/> </system-properties>Copy to Clipboard Copied! Toggle word wrap Toggle overflow
Nota
15.3. Ejecución de la MVJ con la codificación UTF-8 Copiar enlaceEnlace copiado en el portapapeles!
Parte IV. Ejecución Copiar enlaceEnlace copiado en el portapapeles!
Capítulo 16. Servidor de ejecución Copiar enlaceEnlace copiado en el portapapeles!
16.1. Reglas de tareas Copiar enlaceEnlace copiado en el portapapeles!
16.1.1. Definición de reglas de tareas Copiar enlaceEnlace copiado en el portapapeles!
- Cree un archivo que contenga la definición de la regla sobre classpath de Central empresarial (la ubicación recomendada es
$DEPLOY_DIR/standalone/deployments/business-central.war/WEB-INF/classes/):default-add-task.drlcon las reglas que deben verificarse cuando se crea la tarea humana.default-complete-task.drlwith the rules con las reglas que deben verificarse cuando se completa la tarea humana.
- Defina las reglas en el archivo.
Ejemplo 16.1. El contenido default-add-task.drl
Mary la tarea automáticamente asignará al usuario mary.
Ejemplo 16.2. El contenido default-complete-task.drl
Mary la tarea automáticamente asignará al usuario mary.
16.2. Sesión de correo Copiar enlaceEnlace copiado en el portapapeles!
16.2.1. Configuración de la sesión de correo Copiar enlaceEnlace copiado en el portapapeles!
- Abra el perfil del archivo de configuración respectivo (
standalone.xmlohost.xml) para editarlo. - Agregue la sesión de correo al subsistema
urn:jboss:domain:mail:1.1.Ejemplo 16.3. Nueva sesión de correo en localhost
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - Defina el socket de salida de la sesión en e archivo de configuración del perfil.
Ejemplo 16.4. Definición de socket de salida
<outbound-socket-binding name="bpmsMail"> <remote-destination host="localhost" port="12345"/> </outbound-socket-binding><outbound-socket-binding name="bpmsMail"> <remote-destination host="localhost" port="12345"/> </outbound-socket-binding>Copy to Clipboard Copied! Toggle word wrap Toggle overflow
Capítulo 17. Complemento para Red Hat JBoss Developer Studio Copiar enlaceEnlace copiado en el portapapeles!
17.1. Complemento Copiar enlaceEnlace copiado en el portapapeles!
Parte V. Monitorización Copiar enlaceEnlace copiado en el portapapeles!
Capítulo 18. Monitorización de procesos Copiar enlaceEnlace copiado en el portapapeles!
18.1. JBoss Operations Network Copiar enlaceEnlace copiado en el portapapeles!
com.sun.management.jmxremote.* se deben pasar a la aplicación JBoss por medio del archivo de configuración pom.xml.
18.2. Instalación de complementos de JBoss BRMS en JBoss ON Copiar enlaceEnlace copiado en el portapapeles!
Procedimiento 18.1. Copiado de los archivos JAR complemento de JBoss BRMS
- Extraiga el archivador paquete complemento de JBoss BRMS en una ubicación temporal. Esto crea un subdirectorio con el nombre jon-plugin-pack-brms-bpms-3.3.0.GA. Por ejemplo:
unzip jon-plugin-pack-brms-bpms-3.3.0.GA.zip -d /tmp
[root@server rhq-agent]# unzip jon-plugin-pack-brms-bpms-3.3.0.GA.zip -d /tmpCopy to Clipboard Copied! Toggle word wrap Toggle overflow - Copie los archivos extraídos JAR complemento de JBoss BRMS del directorio jon-plugin-pack-brms-bpms-3.2.0.GA/ en el directorio complemento del servidor de JBoss ON. Por ejemplo:
cp /tmp/jon-plugin-pack-brms-bpms-3.3.0.GA/*.jar /opt/jon/jon-server-3.3.0.GA1/plugins
[root@server rhq-agent]# cp /tmp/jon-plugin-pack-brms-bpms-3.3.0.GA/*.jar /opt/jon/jon-server-3.3.0.GA1/pluginsCopy to Clipboard Copied! Toggle word wrap Toggle overflow - Inicie el servidor JBoss Operations Network para actualizar el complemento JBoss BRMS.
Procedimiento 18.2. Carga del complemento de JBoss BRMS por medio de la GUI
- Inicie el servidor de JBoss Operations Network e inicie sesión para acceder a la GUI.
- En la parte superior de la GUI, abra el menú Administration.
- En el área Configuration a la izquierda, seleccione el enlace Plugins de servidor.
- Al final de la lista de complementos del servidor cargado haga clic en el botón Cargar un plugin y seleccione el complemento BRMS.
- El complemento JBoss BRMS para JBoss Operations Network ha sido cargado.
18.3. Monitorización de bases Kie y sesiones Kie Copiar enlaceEnlace copiado en el portapapeles!
-kie.mbeans = enabled
-kie.mbeans = enabled
KieBaseConfiguration kbconf = KieServices.Factory.get().newKieBaseConfiguration();
kbconf.setOption(MBeansOption.ENABLED);
KieBaseConfiguration kbconf = KieServices.Factory.get().newKieBaseConfiguration();
kbconf.setOption(MBeansOption.ENABLED);
Nota
Kie Services han sido implementados para JBoss BRMS 6; para JBoss BRMS 5, Drools Services era la convención de nombrado utilizada y tenía diferentes medidas en las sesiones. Por ejemplo, el renombrado → ocurría en la versión actualizada.
Capítulo 19. Gestión de la seguridad para Red Hat JBoss BPM Suite Dashbuilder Copiar enlaceEnlace copiado en el portapapeles!
19.1. Acceso a Red Hat JBoss BPM Suite Dashbuilder Copiar enlaceEnlace copiado en el portapapeles!
19.2. Gestión de seguridad Copiar enlaceEnlace copiado en el portapapeles!
- admin - administra el sistema Red Hat JBoss BPM Suite. Tiene todos los derechos para hacer cambios, incluida la habilidad de agregar y borrar usuarios del sistema.
- desarrollador - implementa el código requerido para que los procesos funcionen. Utiliza la conexión JBDS en su mayoría para ver procesos pero utiliza la herramienta de red ocasionalmente.
- analista - es el responsable de crea y diseñar procesos en el sistema. Crea flujos de procesos y maneja peticiones de cambio de procesos. Necesitar probar los procesos que crea. También crea formularios y paneles.
- usuario - el usuario diario del sistema que realiza acciones en tareas empresariales que se requieren para que los procesos continuen. Funciona principalmente con las listas de tareas.
- mánager - un mánager es un observador del sistema que está interesado en las estadísticas relacionadas con los procesos empresariales y su rendimiento, indicadores empresariales y otros reportes del sistema y de las personas que interactúan con el sistema.
19.3. Permisos del espacio de trabajo Copiar enlaceEnlace copiado en el portapapeles!
Procedimiento 19.1. Acceso a los permisos del espacio de trabajo
- Inicie sesión en los Paneles empresariales de la Central empresarial (tal como se describe en la sección sobre Acceso a Red Hat JBoss BPM Suite Dashbuilder).
- Seleccione el Panel apropiado del menú desplegable del espacio de trabajo.
Figura 19.1. Espacio de trabajo del constructor de paneles
- Haga clic en el botón Edit selected workspace properties
para acceder al Panel del espacio de trabajo.
- Haga clic en la etiqueta Permisos para ver la pantalla de gestión de permisos.
Figura 19.2. Pantalla de permisos
- Acceso: permiso para iniciar sesión en la aplicación.
- Administrar: permiso para acceder la barra de herramientas y las funcionalidades de configuración del sistema.
- Crear páginas: habilidad para crear nuevas páginas del proyecto.
- Editar: permiso para cambiar las propiedades del espacio de trabajo.
- Limpiar: habilidad para borrar el espacio de trabajo.
- Modificar permisos: habilidad para otorgar/negar permisos.
- Cambiar paneles permitidos: permiso para restringir el tipo de paneles que se pueden utilizar en este espacio de trabajo.
Figura 19.3. Asignación de permisos
- Roles destino (quién): el usuario al que se le otorgará/negará los permisos definidos.
- Acciones permitidas: dependiendo del tipeo de recurso podemos habilitar/deshabilitar lo que el usuario puede hacer en este recurso.
- Reverso (opcional): cuando tenemos un grupo de roles y queremos otorgar/negar un permiso a todos los roles a excepción de uno.
Nota
19.4. Permisos de páginas Copiar enlaceEnlace copiado en el portapapeles!
- Para acceder a Permisos de páginas, ubique el menú desplegable Páginas bajo el panel jBPM (o el panel que haya seleccionado).
- Después de expandir Páginas, expanda la opción Panel de procesos.
- Seleccione la opción Permisos de página.
Figura 19.4. Permisos de páginas
- Visualizar: permiso para hacer la página visible.
- Edit: habilidad para cambiar las propiedades de la página.
- Limpiar: habilidad para borrar la página.
- Modificar permisos: habilidad para otorgar/negar permisos para la página.
19.5. Permisos del panel Copiar enlaceEnlace copiado en el portapapeles!
- Para acceder a la página Permisos de panel expanda la opción Instancias del panel bajo el panel jBPM (o el panel que esté utilizando).
- Expanda la opción Panel y luego expanda el Panel de procesos.
- Expanda Paneles y seleccione el proceso apropiado.
- Abra la página Permisos de panel.
Figura 19.5. Pantalla de configuración de los permisos del panel
- Visualizar: hacer el panel visible.
- Modificar: cambiar las propiedades del panel.
- Modificar permisos: habilidad para otorgar/negar permisos para el panel.
Apéndice A. Historia de revisiones Copiar enlaceEnlace copiado en el portapapeles!
| Historial de revisiones | |||
|---|---|---|---|
| Revisión 1.0.0-1.1 | Tue Jan 5 2016 | ||
| |||
| Revisión 1.0.0-1 | Wed Aug 05 2015 | ||
| |||