Pages

Subscribe:

Ads 468x60px

Labels

顯示具有 jbpm 標籤的文章。 顯示所有文章
顯示具有 jbpm 標籤的文章。 顯示所有文章

2015年9月17日 星期四

Jbpm3.0在JBoss上的安装、部署及迁移

資料來源

由于国内对JBPM的研究较少,我们在研究该工作流研究后特把本手册公布出来,希望对大家有所帮助,手册由陆义平整理主要包括如下几点:
   1.  如何在一个干净的JBoss服务器上安装Jbpm3.0
   2.  如何将原Jbpm3.0缺省的数据库从HyperSonic改为MySql
   3.  如何发布流程包到mysql数据库,
   4.  如何部署原Jbpm3.0自带的Web应用例子。

1        安装之前的准备工作

1.1           JBoss 4.0.2

Jbpm3.0压缩包中预先配置好工作流引擎的JBoss应用服务器的版本为4.0.2,因此我们先安装好一个干净的JBoss 4.0.2(可从http://www.jboss.com/products/jbossas/downloads下载),假定我们安装在D:/dev/java/jboss-4.0.2(我们定义此目录为#{jboss.home},后同)JBoss自带了3种配置的服务器,我们可以在#{jboss.home}/server目录下面发现3个目录:minimal, default, all. 我们的jbmp server configuration将参考default server configuation模板而建立。

1.2           Mysql

在本手册中我们用到的Mysql版本是4.1.13。(可从http://www.mysql.com获得)

1.3           jbpm3.0压缩包

完整的jbpm3.0压缩包jbpm-starters-kit-with-eclipse-3.0.zip可从http://www.jboss.com/products/jbpm/downloads获得。

2        新建jbpm配置

2.1

#{jboss.home}/server目录下新建一个目录jbpm,将default目录下所有文件和目录copyjbpm下。

2.2

删除jbpm/deploy目录下的以下目录和文件(去掉不必要的模块,加快jbpm启动和运行速度):
/jboss-aop.deployer
/jboss-ws4ee.sar
/management
bsh-deployer.xml
hsqldb-ds.xml
jboss-ha-local-jdbc.rar
jboss-ha-xa-jdbc.rar
monitoring-serve.xml
properties-service.xml
schedule-manager-service.xml
scheduler-service.xml
uuid-key-generator.sar

2.3

删除jbpm/deploy/jms目录下的以下文件:
hqldb-jdbc2-server.xml
hsqldb-jdbc-state-service.xml
jbossmq-destinations-service.xml
同时将下面两个文件copyjms目录下(右键复制后粘贴到jms目录下):

3        创建jbpm数据库

上面我们配置好了一个jbpm server configuration,下面我们将要为jbpm server configuration创建一个mysql数据库来存放jbpm系统表,同时将jboss下的jbpm server configuration所引用的数据源指向我们创建的mysql数据库。执行下列步骤前保证mysql已经启动。
      

3.1           新建一个数据库

打开mysql的命令行客户端,创建一个数据库名为jbpm3
CREATE DATABASE jbpm3;
USE jbpm3;

3.2           创建jbpm系统表

jbpm完整压缩包的jbpm-db/build/mysql/scripts目录下我们可以找到4sql脚本文件,执行其中的mysql.create.sql,这样我们就创建了jbpm所需要的系统表。

3.3           创建Web例子用户

创建web应用例子中所需要的4个用户
INSERT INTO JBPM_ID_USER VALUES(1,'U','cookie monster','cookie.monster@sesamestreet.tv','crunchcrunch');
INSERT INTO JBPM_ID_USER VALUES(2,'U','ernie','ernie@sesamestreet.tv','canthereyoubert,theresabananainmyear');
INSERT INTO JBPM_ID_USER VALUES(3,'U','bert','bert@sesamestreet.tv','ernie,theresabananainyourear');
INSERT INTO JBPM_ID_USER VALUES(4,'U','grover','grover@sesamestreet.tv','mayday mayday');

3.4           deploy Mysql数据源

下面我们将HyperSonic数据源替换成Mysql数据源
首先将mysqljdbc驱动程序(文件名为mysql-connector-java-3.1.7-bin.jar,可以在jbpm3.0的完整压缩包的jbpm-db/mysql/lib目录下找到)copy#{jboss.home}/server/jbpm/lib目录下,
然后将下面的文件copy#{jboss.hom}/server/jbpm/deploy目录下,请注意修改该xml文件中的数据库用户名和口令
这样我们就将原来JBoss所指向的HyperSonic数据源替换成Mysql的数据源了。

4        部署jbpm服务包

#{jboss.home}/server/jbpm/deploy目录下新建jbpm.sar目录,将下面的sar文件(标准zip格式)展开在jbpm.sar目录下
展开后的目录结构如下图所示

5        Recompile&depploy jbpm相关文件

下面我们将重新编译和发布jbpm例程相关包,主要涉及到以下几个模块:
l         Websale流程包(websale.par)。
l         Websale应用例子(jbpm.war)。

5.1           新建一个java project

5.1.1 eclipse中新建一个java project,命名为myjbpm
5.1.2 将下列两个目录copysrc目录下
位于jbpm压缩包/jbpm/src/java.webapp下的org目录
位于jbpm压缩包/jbpm/src/java.examples/org/jbpm下的websale目录(请删除WebsaleTest.java文件!
5.1.3 myjbpm下新建一个目录lib,将下列jar文件copylib目录下:
antlr-2.7.5H3.jar
asm.jar
bsh-2.0b2.jar
cglib-2.1.jar
commons-collections-2.1.1.jar
commons-logging.jar
dom4j.jar
ehcache-1.1.jar
hibernate3.jar
javax.servlet.jar
javax.servlet.jsp.jar
jbpm-3.0.jar
jbpm-identity-3.0.jar
jta.jar
mysql-connector-java-3.1.7-bin.jar
lib目录下新建一个目录jsf,将下列jar文件copyjsf目录下:
commons-beanutils-1.6.1.jar
commons-digester-1.5.jar
jstl-1.1.0.jar
myfaces-1.0.9.jar
myfaces-impl-1.0.9.jar
myfaces-jsf-api-1.0.9.jar
standard-1.1.2.jar

5.1.4 myjbpm下新建一个目录resources,将下列目录copy到其下
位于jbpm压缩包/jbpm/src/resources下的jbpm.war目录
位于jbpm压缩包/jbpm/src/process.examples下的websale.par目录

5.1.5 copy以下文件到myjbpm目录下
请注意更改build.xmldeploy.dir的属性以及hibernate.cfg.xml中数据库的用户名和口令,打开build.xml文件并执行deploy.processdeploy.war两个目标对象。
执行完成后,我们就将websale流程包和webapp应用例程部署完毕了

6        运行jbpm server configuration

在命令行模式切换到#{jboss.home}/bin目录下,运行下列命令
run –c jbpm
jboss启动成功后即可按照原来的模式运行web例程。

7        调试web应用例程

如果想debug刚才部署的web应用例程,可以按照以下步骤操作:

7.1 安装JBoss-IDE plug-in for Eclipse

Jboss-IDE plug-in可以从http://www.jboss.com/products/jbosside/downloads下载


7.2 配置project debug环境