[jbpm]jBPM(七): 如何让jBPM自带例子运行在指定数据库?
来源:互联网 发布:mac mini 遥控 编辑:程序博客网 时间:2024/06/05 05:19
我们知道jBPM自带例子是运行在其默认的HSQLDB中的, 这个HSQLDB是有其优点, 但一般情况下很少当作项目的正式库来用. 这样,想通过jBPM自带的这个starterKit来往正式库里发布项目定义的流程就不可能了. 那怎么办? 能不能改下jBPM自带starterKit运行的数据库呢? 也就是说让starterKit运行在自己指定的数据库上. 我们这里还是以Mysql为例来梳理总结怎么来修改配置.
修改starterKit关于数据库方面配置前,我们先做下准备工作,先采用"jBPM(五): 部署jBPM所用表到数据库_2 "中的ant命令来建表(并部署自带的websale实例已定义好的流程).
这样准备工作做完好了, 下面来看怎么来改starterKit里关于数据库方面的配置. 以下是具体步骤:
1, 在JBPM_HOME/jbpm-server/server/jbpm/deploy目录下新建一名为"jbpm-ds.xml"的文件, 文件内部如下:
Xml代码
<?xml version="1.0" encoding="UTF-8"?>
<datasources>
<local-tx-datasource>
<jndi-name>JbpmDS</jndi-name>
<connection-url>jdbc:mysql://localhost:3306/jbpm</connection-url>
<driver-class>com.mysql.jdbc.Driver</driver-class>
<user-name>root</user-name>
<password>yourmysqlrootpw</password>
<metadata>
<type-mapping>MySQL</type-mapping>
</metadata>
</local-tx-datasource>
</datasources>
如果用的不是MySQL, 可参考JBoss Application Server distribution里docs/examples/jca文件夹下的data source定义文件.
2, 拷MySQL的驱动到JBPM_HOME/jbpm-server/server/jbpm/lib文件夹下.
3, 修改JBPM_HOME/jbpm-server/server/jbpm/deploy/jbpm.sar/META-INF文件夹下jboss-service.xml文件的内容. 替换为如下内容:
Xml代码
<?xml version="1.0" encoding="UTF-8"?>
<server>
<mbean code="org.jbpm.db.jmx.JbpmService"
name="jboss.jbpm:name=DefaultJbpm,service=JbpmService"
description="Default jBPM Service">
<attribute name="JndiName">java:/jbpm/JbpmConfiguration</attribute>
<depends>jboss.jca:service=DataSourceBinding,name=JbpmDS</depends>
</mbean>
</server>
也就是将depends中的name由原来的DefaultDS改为JbpmDS.
4, 找到JBPM_HOME/jbpm-server/server/jbpm/deploy/jbpm.sar文件夹下jbpm.sar.cfg.jar文件, 解压到一个地方, 修改里面的hibernate.cfg.xml文件. 只有两处可改:
<property name="hibernate.dialect">org.hibernate.dialect.MySQLDialect</property>
<property name="hibernate.connection.datasource">java:/JbpmDS</property>
修改完后, 利用WinRaR压缩jbpm.sar.cfg.jar解压后的文件(一共三个文件(夹): jbpm.cfg.xml, hibernate.cfg.xml和META-INF文件夹),并命名为jbpm.sar.cfg.jar,替换原来的 jbpm.sar.cfg.jar文件 .
这里有一个注意点,如下图所示:
压缩时选定ZIP, 并将压缩名设置为jbpm.sar.cfg.jar 这样产生的文件名将是 jbpm.sar.cfg.jar.zip, 我们得再通过重命名的方式将".zip"去掉. 这样再替换掉原来的 jbpm.sar.cfg.jar文件.
至此, 我们修改完毕,双击JBPM_HOME jbpm-server下的start.bat,启动服务器. 在cmd的显示信息中,我找到如下的证明:
21:03:07,046 INFO [SettingsFactory] RDBMS: MySQL , version: 5.0.67-community-nt
21:03:07,046 INFO [SettingsFactory] JDBC driver: MySQL-AB JDBC Driver, version: mysql -connector-java-3.1.7 ( $Date: 2005/01/25 19:11:41 $, $Revision: 1.27.4.54 $ )
21:03:07,078 INFO [Dialect] Using dialect: org.hibernate.dialect.MySQLDialect
这样从结果上也证明我们配置成功!
修改starterKit关于数据库方面配置前,我们先做下准备工作,先采用"jBPM(五): 部署jBPM所用表到数据库_2 "中的ant命令来建表(并部署自带的websale实例已定义好的流程).
这样准备工作做完好了, 下面来看怎么来改starterKit里关于数据库方面的配置. 以下是具体步骤:
1, 在JBPM_HOME/jbpm-server/server/jbpm/deploy目录下新建一名为"jbpm-ds.xml"的文件, 文件内部如下:
Xml代码
<?xml version="1.0" encoding="UTF-8"?>
<datasources>
<local-tx-datasource>
<jndi-name>JbpmDS</jndi-name>
<connection-url>jdbc:mysql://localhost:3306/jbpm</connection-url>
<driver-class>com.mysql.jdbc.Driver</driver-class>
<user-name>root</user-name>
<password>yourmysqlrootpw</password>
<metadata>
<type-mapping>MySQL</type-mapping>
</metadata>
</local-tx-datasource>
</datasources>
如果用的不是MySQL, 可参考JBoss Application Server distribution里docs/examples/jca文件夹下的data source定义文件.
2, 拷MySQL的驱动到JBPM_HOME/jbpm-server/server/jbpm/lib文件夹下.
3, 修改JBPM_HOME/jbpm-server/server/jbpm/deploy/jbpm.sar/META-INF文件夹下jboss-service.xml文件的内容. 替换为如下内容:
Xml代码
<?xml version="1.0" encoding="UTF-8"?>
<server>
<mbean code="org.jbpm.db.jmx.JbpmService"
name="jboss.jbpm:name=DefaultJbpm,service=JbpmService"
description="Default jBPM Service">
<attribute name="JndiName">java:/jbpm/JbpmConfiguration</attribute>
<depends>jboss.jca:service=DataSourceBinding,name=JbpmDS</depends>
</mbean>
</server>
也就是将depends中的name由原来的DefaultDS改为JbpmDS.
4, 找到JBPM_HOME/jbpm-server/server/jbpm/deploy/jbpm.sar文件夹下jbpm.sar.cfg.jar文件, 解压到一个地方, 修改里面的hibernate.cfg.xml文件. 只有两处可改:
<property name="hibernate.dialect">org.hibernate.dialect.MySQLDialect</property>
<property name="hibernate.connection.datasource">java:/JbpmDS</property>
修改完后, 利用WinRaR压缩jbpm.sar.cfg.jar解压后的文件(一共三个文件(夹): jbpm.cfg.xml, hibernate.cfg.xml和META-INF文件夹),并命名为jbpm.sar.cfg.jar,替换原来的 jbpm.sar.cfg.jar文件 .
这里有一个注意点,如下图所示:
压缩时选定ZIP, 并将压缩名设置为jbpm.sar.cfg.jar 这样产生的文件名将是 jbpm.sar.cfg.jar.zip, 我们得再通过重命名的方式将".zip"去掉. 这样再替换掉原来的 jbpm.sar.cfg.jar文件.
至此, 我们修改完毕,双击JBPM_HOME jbpm-server下的start.bat,启动服务器. 在cmd的显示信息中,我找到如下的证明:
21:03:07,046 INFO [SettingsFactory] RDBMS: MySQL , version: 5.0.67-community-nt
21:03:07,046 INFO [SettingsFactory] JDBC driver: MySQL-AB JDBC Driver, version: mysql -connector-java-3.1.7 ( $Date: 2005/01/25 19:11:41 $, $Revision: 1.27.4.54 $ )
21:03:07,078 INFO [Dialect] Using dialect: org.hibernate.dialect.MySQLDialect
这样从结果上也证明我们配置成功!
- [jbpm]jBPM(七): 如何让jBPM自带例子运行在指定数据库?
- jBPM
- jbpm
- jBPM
- JBPM
- JBPM
- JBPM
- Jbpm
- jbpm
- jbpm
- jbpm
- jbpm
- jbpm
- jbpm
- Jbpm
- jbpm
- JBPM
- JBPM
- 11年的程序人生
- Flex+J2ee项目配置
- 从输入日期算起的第三天日期
- linux远程登录ssh免密码
- C语言中可变参数的用法
- [jbpm]jBPM(七): 如何让jBPM自带例子运行在指定数据库?
- BigDecimal介绍
- strcat 的实现
- 必备的实用jquery代码段
- JVM总结(1)----JVM体系结构
- 解决error C2011: 'fd_set' : 'struct' type redefinition的方法
- Android在终端本地保存txt文本文件及zip文件
- 表达式解析器添加dynamic访问及静态方法调用
- [jbpm]jBPM(八): 也说jBPM + Tomcat + MySQL