JBPM6把默认的H2数据库替换成mySql

最近在做JBPM相关的东西,碰到了很多问题,其中一个就是怎样用mySql替换jbpm默认的H2数据库。现在终于成功了,在此记录一下~

一、参考资料如下:

大家可以参考JBPM6.1的Document,方法还是挺靠谱的~ 只是可能有的地方说的不清晰!地址如下:http://docs.jboss.org/jbpm/v6.1/userguide/jBPMInstaller.html#d0e950

另外还有一个文档也很不错,地址:https://docs.google.com/document/d/1e43OHWPqaQU3-xT2AzqnGNiifjcg60yk2_AIwj2QgiU/edit?pli=1  

 我基本上就是结合了这两个文档的方法做成功的。

先说一下需要注意的地方:在这个过程中因为要运行 ant clean.demo命令,这个命令会卸载很多东西,包括eclipse。所以如果你的jbpm-installer\workspace 文件夹有重要的工程,一定要先备份一下!!

下面开始说我的详细操作步骤:

 1.在mySql中建一个jbpm数据库,创建一个用户 user:jbpm password:jbpm

 2.运行ant stop.demo (如果现在运行了ant start.demo)

 3.运行ant clean.demo

 4.修改build.properties文件(把H2数据库取消掉),改完如下:# 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

5.修改build.xml

<!-- Start Demo -->
把  <target name="start.demo" depends="start.h2,start.jboss,start.eclipse" />

改成: <target name="start.demo" depends="start.jboss,start.eclipse" />

        ……………………(中间的不变)…………………………

<!-- Stop Demo -->
 把     <target name="stop.demo" depends="stop.h2,stop.jboss" />
改成:<target name="stop.demo" depends="stop.jboss" />

<target name="stop.demo.eclipse" depends="stop.h2" />

 

6. 修改db/jbpm-persistence-JPA2.xml

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

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

 

7.修改根目录下所有以 standalone开头的文件 

   我这里一共有6个(standalone-as-7.1.1.Final.xml,standalone-eap-6.1.1.xml,standalone-full-as-7.1.1.Final.xml,standalone-full-eap-6.1.1.xml,

                             standalone-full-wildfly-8.1.0.Final.xml,standalone-wildfly-8.1.0.Final.xml)。

    修改前:  

<datasource jndi-name="java:jboss/datasources/jbpmDS" enabled="true" use-java-context="true" pool-name="H2DS">
    <connection-url>jdbc:h2:tcp://localhost/runtime/jbpm-demo</connection-url>
    <driver>h2</driver>
    <pool></pool>
    <security>
       <user-name>sa</user-name>
       <password></password>
    </security>
</datasource>
<drivers>
    <driver name="h2" module="com.h2database.h2">
        <xa-datasource-class>org.h2.jdbcx.JdbcDataSource</xa-datasource-class>
    </driver>
</drivers>

修改后:

<datasource jndi-name="java:jboss/datasources/jbpmDS" pool-name="MySQLDS" enabled="true" use-java-context="true">
    <connection-url>jdbc:mysql://localhost:3306/jbpm</connection-url>
    <driver>mysql</driver>
    <pool></pool>
    <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>

8.修改jbpm-console-6.1.0.Final.war/WEB-INF/classes/META-INF/persistence.xml

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

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

    然后重新压缩。

 9. 运行 ant install.demo

10. 运行 ant install.db.files

 以上就是配置的全部工作。

 

 现在运行 ant start.demo ,然后会看到mySql的jbpm数据库新建了很多表,如下图:

jbpm数据库表

   另外,你也可以打开 http://localhost:8080/ ,选择 Administration Console,运行D:\JBPM\jbpm-installer\wildfly-8.1.0.Final\bin\add-user.bat ,注册一个账号登陆到服务器,选择configuration,查看Datasources的配置,显示界面如下,原来的H2数据库已经改成了mySql,说明配置成功了。

     

 

posted @ 2015-07-01 16:46  summer323  阅读(938)  评论(3)    收藏  举报