2.2. La instalación agrupada genérica implementable
Para instalar Red Hat JBoss BPM Suite en el Red Hat JBoss Web Server (EWS), necesita utilizar el paquete implementable genérico del producto.
Para la instalación en EWS, el paquete implementable genérico contiene bibliotecas de seguridad y administradores de transacciones adicionales que no son parte de Red Hat JBoss EWS.
Observe que el paquete implementable genérico, requiere los siguientes archivos ZIP:
jboss-bpmsuite-VERSION-deployable-generic.zip: contiene las aplicaciones webbusiness-central.war,dashbuilder.warykie-server.war.jboss-bpmsuite-VERSION-engine.zip: bibliotecas de motor de ejecución para incorporar el motor en su aplicación y otras bibliotecas necesarias para implementación genérica.
2.2.1. Descargar el paquete genérico implementable
Para descargar el paquete genérico implementable Red Hat JBoss BPM Suite para JBoss Web Server, siga lo siguiente:
- Vaya al portal del cliente de Red Hat e inicie sesión.
- Haga clic en Descargas.
- En la lista de productos haga clic en Red Hat JBoss BPM Suite.
- Desde el menú desplegable Versión, seleccióne la version 6.1 (si aún no ha seleccionado.)
- En la sección de Descargas de software que aparece, navegue Red Hat JBoss BPM Suite 6.1 Deployable for all supported containers y luego haga clic en Descargar.
- También navegue a los archivos Red Hat JBoss BPM Suite 6.1 Engine y haga clic en Descargar para descargar los archivos JBoss BPM Suite Engine.
2.2.2. Instalación del paquete implementable genérico
Para instalar el paquete implementable genérico, necesita configurar lo siguiente después de haber instalado la plataforma subyacente (Red Hat JBoss WS):
- Configure el controlador de la base de datos y el gestor de transacciones (Bitronix) (consulte Sección 2.2.2.1, “Configuración del gestor de transacciones para Red Hat JBoss Web Server 2.1 (Tomcat 7)”).
- Configure la aplicación de la central empresarial: configure usuarios y roles y configure la persistencia (consulte Sección 2.2.2.2, “Configuración de una central empresarial para Red Hat JBoss Web Server 2.1 (Tomcat 7)”).
- Configure la aplicación Dashbuilder: configure usuarios y roles y configure la persistencia (consulte Sección 2.2.2.3, “Configuración de Dashbuilder para Red Hat JBoss Web Server 2.0 (Tomcat 7)”).
2.2.2.1. Configuración del gestor de transacciones para Red Hat JBoss Web Server 2.1 (Tomcat 7)
- Extraiga el paquete zip genérico implementable que descargó del Portal del cliente de Red Hat a una ubicación temporal. Este paquete zip contiene los siguientes tres archivos de aplicaciones web:
business-central.war,dashbuilder.warykie-server.waren un formato utilizado. Renombre estas carpetas para retirar la extensión.war. - Copie estas carpetas directamente en la carpeta
$TOMCAT_DIR/webapps.Al final debe tener tres carpetas en formato en un formato explotado:$TOMCAT_DIR/webapps/business-central,$TOMCAT_DIR/webapps/dashbuilderand$TOMCAT_DIR/webapps/kie-server.Nota
$TOMCAT_DIR se refiere al directorio de inicio en donde se encuentra su servidor de red. Remplácelo con la ruta a su directorio de inicio del servidor de red, por ejemplo:/home/john/jboss-ews-2.1/tomcat7/ - Extraiga el contenido de los archivos JBoss BPM Suite Engine del archivador a una ubicación temporal desde donde puede copiar las bibliotecas requeridas. Esta carpeta ahora contiene todas las bibliotecas centrales JBoss BPM Suite en la carpeta extraída y una carpeta
lib. Instale el gestor de transacciones.
Aviso
Por favor observe que la siguiente sección describe la configuración de un gestor de transacción, Bitronix que no recibe oficialmente soporte de Red Hat.Copie las siguientes bibliotecas JAR del administrador de transacciones de la carpetalibal directorio$TOMCAT_DIR/lib/:- btm-VERSION.jar
- btm-tomcat55-lifecycle-VERSION.jar
- jta-VERSION.jar
- slf4j-api-VERSION.jar
- slf4j-jdk14-VERSION.jar
Además, descargue la siguiente biblioteca y cópiela en la carpeta$TOMCAT_DIR/lib/también:Instale el controlador en su base de datos
Copie el archivo jar con el controlador de base de datos importante para$TOMCAT_DIR/lib/.Nota
Si utiliza la base de datos H2 integrada, el controlador está disponible enbusiness-central/WEB-INF/lib/.- Cree los archivos de configuración del gestor de transacciones en
$TOMCAT_DIR/conf/:- btm-config.properties
bitronix.tm.serverId=tomcat-btm-node0 bitronix.tm.journal.disk.logPart1Filename=${btm.root}/work/btm1.tlog bitronix.tm.journal.disk.logPart2Filename=${btm.root}/work/btm2.tlog bitronix.tm.resource.configuration=${btm.root}/conf/resources.properties - resources.properties (el resource.ds1.uniqueName define el nombre de la fuente de datos utilizado después en la definición de recursos tomcat - tome nota de este valor).Asegúrese de cambiar los valores en las siguientes definiciones para que coincidan con su entorno.
Ejemplo 2.1. Definición de la fuente de datos H2
resource.ds1.className=bitronix.tm.resource.jdbc.lrc.LrcXADataSource resource.ds1.uniqueName=jdbc/jbpm resource.ds1.minPoolSize=10 resource.ds1.maxPoolSize=20 resource.ds1.driverProperties.driverClassName=org.h2.Driver resource.ds1.driverProperties.url=jdbc:h2:file:~/jbpm resource.ds1.driverProperties.user=sa resource.ds1.driverProperties.password= resource.ds1.allowLocalTransactions=true
Ejemplo 2.2. Definición de la fuente de datos MySQL 5.5
resource.ds1.className=com.mysql.jdbc.jdbc2.optional.MysqlXADataSource resource.ds1.uniqueName=jdbc/jbpm resource.ds1.minPoolSize=0 resource.ds1.maxPoolSize=10 resource.ds1.driverProperties.URL=jdbc:mysql://localhost:3306/sampledb resource.ds1.driverProperties.user=dbuser resource.ds1.driverProperties.password=dbpassword resource.ds1.allowLocalTransactions=true
Ejemplo 2.3. Definición de la fuente de datos DB2 Type 4
resource.ds1.className=com.ibm.db2.jcc.DB2Driver resource.ds1.uniqueName=jdbc/jbpm resource.ds1.minPoolSize=0 resource.ds1.maxPoolSize=10 resource.ds1.driverProperties.URL=jdbc:db2://localhost:50000/sampledb resource.ds1.driverProperties.user=dbuser resource.ds1.driverProperties.password=dbpassword resource.ds1.allowLocalTransactions=true
Ejemplo 2.4. Definición de la fuente de datos Oracle
resource.ds1.className=oracle.jdbc.xa.client.OracleXADataSource resource.ds1.uniqueName=jdbc/jbpm resource.ds1.minPoolSize=0 resource.ds1.maxPoolSize=10 resource.ds1.driverProperties.URL=jdbc:oracle:thin:@//localhost:1521/bpms resource.ds1.driverProperties.user=dbuser resource.ds1.driverProperties.password=dbpassword resource.ds1.allowLocalTransactions=true
Ejemplo 2.5. Definición de la fuente de datos del servidor Microsoft SQL
resource.ds1.className=com.microsoft.sqlserver.jdbc.SQLServerDriver resource.ds1.uniqueName=jdbc/jbpm resource.ds1.minPoolSize=0 resource.ds1.maxPoolSize=10 resource.ds1.driverProperties.URL=jdbc:sqlserver://localhost:1433;databaseName=bpms; resource.ds1.driverProperties.user=dbuser resource.ds1.driverProperties.password=dbpassword resource.ds1.allowLocalTransactions=true
- Configure el escucha de gestor de transacciones en
$TOMCAT_DIR/conf/server.xmlpara iniciar y detener Bitronix en el arranque y detención del contenedor:Agregue el siguiente elemento como el último elemento <Listener> en el elemento <Server>:<Listener className="bitronix.tm.integration.tomcat55.BTMLifecycleListener" />
- Defina la propiedad del sistema btm.root y la ubicación en donde se ubica el archivo de configuración bitronix:En
$TOMCAT_DIR/bin/, cree el archivosetenv.shcon el siguiente contenido:CATALINA_OPTS="-Xmx512M -XX:MaxPermSize=512m -Djava.security.auth.login.config=$CATALINA_HOME/webapps/business-central/WEB-INF/classes/login.config -Dbtm.root=$CATALINA_HOME -Dbitronix.tm.configuration=$CATALINA_HOME/conf/btm-config.properties -Dorg.jbpm.designer.perspective=RuleFlow -Djbpm.tsr.jndi.lookup=java:comp/env/TransactionSynchronizationRegistry"
La propiedadorg.jbpm.designer.perspectivese establece aRuleFlowpara que la perspectiva para el diseñador seaRuleFlowen lugar deFull. Otórguele al archivo permisos de ejecución si Grant the file execute permissions if applicable.La propiedadjava.security.auth.login.configdebe establecerse para que el clon ssh del repositorio git funcione.Importante
En sistemas Microsoft Windows remplace el valor$CATALINA_HOMEen el contenido del archivo con el nombre de la variable de entorno equivalente o use la ruta absoluta y agregue los valores en el archivosetenv.bat, tal como se muestra en el siguiente ejemplo:set "CATALINA_OPTS=-Xmx512M -XX:MaxPermSize=512m -Dbtm.root=C:/Tomcat -Dbitronix.tm.configuration=C:/Tomcat/conf/btm-config.properties -Dorg.jbpm.designer.perspective=RuleFlow"
2.2.2.2. Configuración de una central empresarial para Red Hat JBoss Web Server 2.1 (Tomcat 7)
Para establecer la central empresarial haga lo siguiente:
- Configure
Valvepara que la aplicación web Business Central web pueda cargar los usuarios configurados en Tomcat:- Defina los usuarios y roles en
$TOMCAT_DIR/conf/tomcat-users.xml. Note que la central empresarial requiere que los usuarios tengan los roles especificados comoadminy/oanalyst(fpara más información sobre definiciones de roles y usuarios consulte la documentación de Tomcat 7).El programa listado a continuación muestra un ejemplo de cómo se agregarían estos dos roles y se le asignarán estos roles al usuario llamadobpmsadmin.Nota
Asegúrese de que los nombres de usuario no estén en conflicto con los roles conocidos. Por ejemplo, no debe crear un usuario con el nombre de usuarioadmin.<role rolename="admin"/> <role rolename="analyst" /> <user username="bpmsadmin" password="P@ssw0rd" roles="admin,analyst"/>
- Desplace (no copie)
kie-tomcat-integration-VERSION.jarde$TOMCAT_DIR/webapps/business-central/WEB-INF/lib/a$TOMCAT_DIR/lib/. - Copie
jboss-jaxb-api-VERSION.jarfrom$TOMCAT_DIR/webapps/business-central/WEB-INF/lib/en$TOMCAT_DIR/lib/. - En
$TOMCAT_DIR/conf/server.xmlagregue la declaración de válvula Tomcat en el elemento relevante <host>:<Valve className="org.kie.integration.tomcat.JACCValve" />
- Si está usando una fuente de datos diferente de la predeterminada proporcionada por la base de datos H2 subyacente necesitará configurar la persistencia. Si está utilizando la base de datos H2 predeterminada entonces puede ignorar el resto de pasos en este procedimiento.En este procedimiento se configura una fuente de datos con el nombre JNDI
jdbc/myDatasourcetal como se define en uniqueName=jdbc/jbpm en el archivo bitronixresources.properties(para la opción MySQL):- En
business-central/META-INF/context.xmlreemplace el nombre JNDI de la fuente de datos en el elemento <Resource>. El atributo uniqueName se refiere a la propiedad resource.ds1.uniqueName establecida enresources.properties:<Resource name="jdbc/myDatasource" uniqueName="jdbc/jbpm" auth="Container" removeAbandoned="true" factory="bitronix.tm.resource.ResourceObjectFactory" type="javax.sql.DataSource"/>
- En
business-central/WEB-INF/web.xmlremplace el nombre JNDI de la fuente de datos en el elemento <res-ref-name> con su nombre de fuente de datos:<resource-ref> <description>Console DS</description> <res-ref-name>jdbc/myDatasource</res-ref-name> <res-type>javax.sql.DataSource</res-type> <res-auth>Container</res-auth> </resource-ref> - Cambie
business-central/WEB-INF/classes/META-INF/persistence.xml.En este archivo cambie el nombre del dialecto hibernate utilizado para su base de datos si está utilizando una base de datos diferente de H2. El código a continuación demuestra la información de la base de datos original parapersistence.xml:<property name="hibernate.dialect" value="org.hibernate.dialect.H2Dialect"/>
Esta información se puede actualizar de la siguiente manera (tal como se demuestra con la base de datos MySQL a continuación):<property name="hibernate.dialect" value="org.hibernate.dialect.MySQLDialect"/>
Nota
El dialecto para DB2 esorg.hibernate.dialect.DB2Dialect, para DB2 en AS/400 esorg.hibernate.dialect.DB2400Dialect, para Oracle esorg.hibernate.dialect.Oracle10gDialecty para el servidor Microsoft SQL esorg.hibernate.dialect.SQLServerDialect - Cambie el archivo
business-central/WEB-INF/classes/META-INF/persistence.xmlde manera que la máquina de procesos JBoss BPM Suite pueda usar la nueva base de datos.El código a continuación demuestra la información de la fuente de datos original parapersistence.xml:<jta-data-source>java:comp/env/jdbc/jbpm</jta-data-source>
Cambie este valor a la fuente de datos definida anteriormente:<jta-data-source>java:comp/env/jdbc/myDatasource</jta-data-source>
- Ahora puede iniciar JBoss Web Server para iniciar sesión en la central empresarial.
- Ejecute
startup.shen el directorio $TOMCAT_HOME/bin../startup.sh
- Vaya a http://localhost:8080/business-central en un navegador web.
- Inicie sesión con el nombre de usuario/contraseña definidos en el archivo
tomcat-users.xml.
2.2.2.3. Configuración de Dashbuilder para Red Hat JBoss Web Server 2.0 (Tomcat 7)
Nota
Antes de configurar Dashbuilder en Red Hat JBoss Web Server, debe asegurarse de tener instalada correctamente la Central Empresarial como se describe en Sección 2.2.2.2, “Configuración de una central empresarial para Red Hat JBoss Web Server 2.1 (Tomcat 7)”. Dashbuilder necesita las tablas de base de datos del registro de historia para existir, las cuales únicamente son provistas por la Central empresarial. Si estas tablas no están presentes en la base de datos antes de intentar los pasos de abajo, es posible que se presenten errores de inicialización.
Para establecer un panel de construcción en el servidor de red JBoss Red Hat, haga lo siguiente:
- Defina usuarios y roles en
$TOMCAT_DIR/conf/tomcat-users.xml. Observe que Dashbuilder requiere que los usuarios tengan el rol especificado comoadminy/oanalyst. Si ya definió estos usuarios para la Central empresarial entonces no necesita definirlos de nuevo. - Habilite el inicio de sesión único entre Dashbuilder y la Central empresarial borrando el comentario de las siguientes líneas en el archivo
$TOMCAT_DIR/conf/server.xml:<Valve className="org.apache.catalina.authenticator.SingleSignOn" />
- Como con la configuración de la Central empresarial, si está utilizando una base de datos diferente a la predeterminada y una base de datos integrada H2, deberá configurar persistencia.En este procedimiento, configure una fuente de datos con el nombre JNDI
jdbc/dashbuilderDScomo se define en uniqueName=jdbc/jbpm en el archivo bitronixresources.properties.- En
dashbuilder/META-INF/context.xmlreemplace el nombre JNDI de la fuente de datos en el elemento <Resource>. El atributo uniqueName se refiere a la propiedad resource.ds1.uniqueName establecida enresources.properties:<Resource name="jdbc/dashbuilderDS" uniqueName="jdbc/jbpm" auth="Container" removeAbandoned="true" factory="bitronix.tm.resource.ResourceObjectFactory" type="javax.sql.DataSource"/>
Nota
Dependiendo de su base de datos es posible que necesite definir otras propiedades aquí también. Por ejemplo, en un entorno Oracle esta entrada puede verse como el siguiente listado.<Resource name="jdbc/jbpm" uniqueName="jdbc/jbpm" auth="Container" removeAbandoned="true" factory="bitronix.tm.resource.ResourceObjectFactory" type="javax.sql.DataSource" username="username" password="password" driverClassName="oracle.jdbc.xa.client.OracleXADataSource" url="jdbc:oracle:thin:YOUR-URL:1521:YOUR-DB" maxActive="8" />
- En
dashbuilder/WEB-INF/web.xmlagregue el nombre JNDI de la fuente de datos en el elemento <res-ref-name> con su nombre de fuente de datos:<resource-ref> <description>Dashboard Builder Datasource</description> <res-ref-name>jdbc/dashbuilderDS</res-ref-name> <res-type>javax.sql.DataSource</res-type> <res-auth>Container</res-auth> </resource-ref> - En
dashbuilder/META-INF/context.xmldefina la fábrica de transacciones:<Transaction factory="bitronix.tm.BitronixUserTransactionObjectFactory"/>
- Actualice el nombre JNDI de la fuente de datos en
dashbuilder/WEB-INF/etc/hibernate.cfg.xmlen el elemento <session-factory>:<property name="connection.datasource">java:/comp/env/jdbc/dashbuilderDS</property>
- Reinicie el servidor de red Java para que los cambios tengan efecto. Una vez reiniciado puede navegar al Dashbuilder desde la central empresarial o directamente a través de:
http://localhost:8080/dashbuilder.