现在的位置: 首页 > Linux > Web技术 > 正文
JBPM 6.1使用MySQL数据库配置
2015年03月12日 Web技术 ⁄ 共 4665字 暂无评论 ⁄ 被围观 4,790 views+

1、基础环境准备:

JDK 1.7以上,ANT 1.7以上

下载地址:

JDK: http://java.sun.com/javase/downloads/index.jsp

我安装的是jdk-7u67,安装后设置JAVA_HOME的环境变量(自行Google或百度)。

Ant: http://ant.apache.org/bindownload.cgi

我安装的1.9.4版本,安装后需设置环境变量,如下:

[root@workflow local]# cat /etc/profile.d/ant.sh

export ANT_HOME=/usr/local/apache-ant-1.9.4

export PATH=$PATH:$ANT_HOME/bin

2、下载JBPM:

下载地址,最新版:https://hudson.jboss.org/jenkins/job/jBPM/lastSuccessfulBuild/artifact/jbpm-distribution/target/

其他版本:http://sourceforge.net/projects/jbpm/files/jBPM%206/

下载需要的版本,文件名为: jBPM-{version}-installer-full.zip

解压需要安装unzip工具,运行:unzip jBPM-{version}-installer-full.zip即可。

3、修改配置文件:

3.1 准备MySQL数据库

我在本机安装的mysql,数据库名、账号、密码均为jbpm。注意,本机安装数据库,需要添加账号为jbpm@localhost并授权。

3.2 修改基础配置:

修改配置前全部务必备份。

1)、进入jbpm根目录下,编辑:build.xml

将第六行:

<property name="jboss.bind.address" value="localhost" />

的localhost修改为本机IP地址,否则无法通过其他机器连接。

<property name="jboss.bind.address" value="192.168.1.20" />

2)、修改build.properties

修改该文件的最后部分为如下:

# default is H2

#H2.version=1.3.170

#db.name=h2

#db.driver.jar.name=${db.name}.jar

#db.driver.download.url=http://repo1.maven.org/maven2/com/h2database/h2/${H2.version}/h2-${H2.version}.jar

#other options are:

#mysql

db.name=mysql

db.driver.module.prefix=com/mysql

db.driver.jar.name=${db.name}-connector-java.jar

db.driver.download.url=https://repository.jboss.org/nexus/service/local/repositories/central/content/mysql/mysql-connector-java/5.1.18/mysql-connector-java-5.1.18.jar

3)、修改:db/jbpm-persistence-JPA2.xml

找到如下一行:

<property name="hibernate.dialect" value="org.hibernate.dialect.H2Dialect" />

修改为:

<property name="hibernate.dialect" value="org.hibernate.dialect.MySQLDialect" />

4)、修改standalone-full-wildfly-8.1.0.Final.xml

版本不同,文件名可能有细微差别。在该文件中找到下来数据源配置的部分,修改为如下(即注释原来的数据源配置,添加新的MySQL配置):

<datasources>

<!--<datasource jndi-name="java:jboss/datasources/ExampleDS" pool-name="ExampleDS" enabled="true" use-java-context="true">

                    <connection-url>jdbc:h2:mem:test;DB_CLOSE_DELAY=-1;DB_CLOSE_ON_EXIT=FALSE</connection-url>

                    <driver>h2</driver>

                    <security>

                        <user-name>sa</user-name>

                        <password>sa</password>

                    </security>

                </datasource>-->

<datasource jta="true" jndi-name="java:jboss/datasources/jbpmDS" pool-name="MySQLDS" enabled="true" use-java-context="true" use-ccm="true">

                    <connection-url>jdbc:mysql://localhost:3306/jbpm</connection-url>

                    <driver>mysql</driver>

                    <security>

                        <user-name>jbpm</user-name>

                        <password>jbpm</password>

                    </security>

                </datasource>

                <drivers>

                    <driver name="mysql" module="com.mysql">

                        <xa-datasource-class>com.mysql.jdbc.jdbc2.optional.MysqlXADataSource</xa-datasource-class>

                    </driver>

                </drivers>

<!--<datasource jta="true" jndi-name="java:jboss/datasources/jbpmDS" pool-name="H2DS" enabled="true" use-java-context="true" use-ccm="true">

                    <connection-url>jdbc:h2:~/jbpm</connection-url>

                    <driver>h2</driver>

                    <security>

                        <user-name>sa</user-name>

                    </security>

                </datasource>

                <drivers>

                    <driver name="h2" module="com.h2database.h2">

                        <xa-datasource-class>org.h2.jdbcx.JdbcDataSource</xa-datasource-class>

                    </driver>

                </drivers>-->

</datasources>

在该文件的底部,找到如下部分修改为与刚才添加的数据源匹配:

<default-bindings context-service="java:jboss/ee/concurrency/context/default" datasource="java:jboss/datasources/jbpmDS" jms-connection-factory="java:jboss/DefaultJMSConnectionFactory" managed-executor-service="java:jboss/ee/concurrency/executor/default" managed-scheduled-executor-service="java:jboss/ee/concurrency/scheduler/default" managed-thread-factory="java:jboss/ee/concurrency/factory/default"/>

否则会出现如下这样的错误提示:

2015-03-12 21:55:47,923 ERROR [org.jboss.as.controller.management-operation] (Controller Boot Thread) JBAS014613: Operation ("deploy") failed - address: ([("deployment" => "jbpm-console.war")]) - failure description: {"JBAS014771: Services with missing/unavailable dependencies" => ["jboss.persistenceunit.\"jbpm-console.war#org.jbpm.domain\".__FIRST_PHASE__ is missing [jboss.naming.context.java.jboss.datasources.jbpmDS]"]}

该文件的尾部,还有配置相关监听端口和监听地址的,可根据实际需要修改,如下:

<inet-address value="${jboss.bind.address.management:0.0.0.0}"/>

4、初始化DEMO环境:

在保障机器可以上上网的情况下(初始化过程中会下载缺省包或驱动),在jbpm根目录下依次运行如下命令:

ant install.demo ##安装包括默认数据库H2、JBoss和Eclipse三样组件,都会在线下载,耗时较长

如果不需要Eclipse,可以将上述命令更换如下:

ant install.demo.noeclipse

启动:

ant start.demo.noeclipse

停止:

ant stop.demo.noeclipse

查看日志:

tail -F wildfly-8.1.0.Final/standalone/log/server.log

给我留言

留言无头像?


×