http://blog.csdn.net/taige5555/archive/2008/06/04/2511901.aspx
说明:jbpm3.2.2最好的搭配组合是tomcat6.0,而不是tomcat5.5!
在JBPM 3.1文档中,并没有说明如何在tomcat5.5下面部署其web console, 在JBPM 3.2.2 中 也只是包涵了JBoss as的运行环境, 为了方便学习,如何在tomcat5.5下面部署呢. 本文在研究了JBPM论坛和wiki上的一些讨论和文章结合实践而成.探讨了如何在Tomcat 5.5和Mysql 5环境下面部署 JBPM 3.2.2, 详细讲述了如何建立JBPM数据库和部署Tomcat war包.
环境: tomcat 5.5.X
mysql MySQL 5.0.X
jbpm-jpdl: 3.2.2 (下载 jbpm-jpdl-suite-3.2.2.zip 文件)
把 jbpm-jpdl-suite-3.2.2.zip 解压到一个文件夹,例如E盘
1.创建数据库schema.
1.1使用mysql创建一个数据库,例如jbpm
1.2 在 E:\jbpm-jpdl-3.2.2\db 下有个 jbpm.jpdl.mysql.sql 数据库脚本文件,我们不能直接导入该文件, 会提示有错误, 应为该文件格式有问题, 首先打开该文件(推荐UltraEdit), 把前面的有alter table JBPM_XX 语句的那一百多行都删除(因为我们使用的是新的数据库,所以不需要这些语句, 这个脚本文件是升级jbpm3.2数据库表结构时用的) 然后在下面的第一行后面添加一个分号,第二行开始以后每一行前面添加一个分号,不然脚本执行会出错. 这是mysql的sql语法.这样就可以用source命令导入了. 导入后表的结构就创建成功了.
1.3 导入用户数据:(用于JDBC realm的数据,如果下面使用tomcat-user.xml配置 这里可以不用执行, 参考下面第三条)
将以下脚本导入到数据库中:
INSERT INTO JBPM_ID_GROUP VALUES(1,'G','sales','organisation',NULL);
INSERT INTO JBPM_ID_GROUP VALUES(2,'G','admin','security-role',NULL);
INSERT INTO JBPM_ID_GROUP VALUES(3,'G','user','security-role',NULL);
INSERT INTO JBPM_ID_GROUP VALUES(4,'G','hr','organisation',NULL);
INSERT INTO JBPM_ID_GROUP VALUES(5,'G','manager','security-role',NULL);
INSERT INTO JBPM_ID_USER VALUES(1,'U','user','user@sample.domain','user');
INSERT INTO JBPM_ID_USER VALUES(2,'U','manager','manager@sample.domain','manager');
INSERT INTO JBPM_ID_USER VALUES(3,'U','admin','admin@sample.domain','admin');
INSERT INTO JBPM_ID_USER VALUES(4,'U','shipper','shipper@sample.domain','shipper');
INSERT INTO JBPM_ID_MEMBERSHIP VALUES(1,'M',NULL,NULL,2,4);
INSERT INTO JBPM_ID_MEMBERSHIP VALUES(2,'M',NULL,NULL,3,4);
INSERT INTO JBPM_ID_MEMBERSHIP VALUES(3,'M',NULL,NULL,4,4);
INSERT INTO JBPM_ID_MEMBERSHIP VALUES(4,'M',NULL,NULL,4,3);
INSERT INTO JBPM_ID_MEMBERSHIP VALUES(5,'M',NULL,NULL,1,3);
INSERT INTO JBPM_ID_MEMBERSHIP VALUES(6,'M',NULL,NULL,2,3);
INSERT INTO JBPM_ID_MEMBERSHIP VALUES(7,'M',NULL,NULL,3,3);
INSERT INTO JBPM_ID_MEMBERSHIP VALUES(8,'M',NULL,NULL,3,2);
INSERT INTO JBPM_ID_MEMBERSHIP VALUES(9,'M',NULL,NULL,2,2);
INSERT INTO JBPM_ID_MEMBERSHIP VALUES(10,'M',NULL,NULL,2,5);
INSERT INTO JBPM_ID_MEMBERSHIP VALUES(11,'M',NULL,'boss',2,1);
INSERT INTO JBPM_ID_MEMBERSHIP VALUES(12,'M',NULL,NULL,1,1);
2.准备jbpm web发布包
2.1在E:\jbpm-jpdl-3.2.2\deploy 文件夹下 运行 ant customize.console.for.tomcat
2.2 上面的命令 会在 E:\jbpm-jpdl-3.2.2\deploy\customized文件夹下 生成一个jbpm-console.war 文件.
2.3 修改jbpm-console.war/WEB-INF/classes/hibernate.cfg.xml 文件,使用
修改如下:
<hibernate-configuration>
<session-factory>
<!-- hibernate dialect -->
<property name="hibernate.dialect">org.hibernate.dialect.MySQLInnoDBDialect</property>
<!-- JDBC connection properties (begin) -->
<property name="hibernate.connection.driver_class">com.mysql.jdbc.Driver</property>
<property name="hibernate.connection.url">jdbc:mysql://localhost:3306/jbpm</property>
<property name="hibernate.connection.username">jbossjbpm</property>
<property name="hibernate.connection.password">jbossjbpm</property>
<!-- JDBC connection properties (end) -->
<property name="hibernate.cache.provider_class">org.hibernate.cache.HashtableCacheProvider</property>
<!-- DataSource properties (begin) ==
<property
name="hibernate.connection.datasource">java:/JbpmDS</property>
== DataSource properties (end) -->
<property name="hibernate.transaction.factory_class">org.hibernate.transaction.JDBCTransactionFactory</property>
...
2.4 把 E:\jbpm-jpdl-3.2.2\lib 目录下的commons-collections.jar 和jboss-j2ee.jar,以及网上下载el-ri.jar和el-api.jar 复制到 jbpm-console.war/WEB-INF/lib目录,后面两个包非常重要,很多人tomcat5.5下没有配置成功,大多是没有添加着两个 jar包.
2.5 把 mysql驱动程序包复制到 /$CATALINA_HOME/lib目录
2.6 把修改后的jbpm-console.war 复制到 /$CATALINA_HOME/webapps目录,
现在你就可以正确部署了.但是你会发现你还不能登陆. 要正确登陆 我们还需要配置
安全域(security realm)
3 设置tomcat安全域
可以直接修改 /$CATALINA_HOME/conf/tomcat-users.xml文件来设置安全域, 修改后
的文件如下:
为了不和tomcat已有的用户冲突,这里把 tomcat以前的登陆帐号username="admin"
修改为username="tadmin" .
<?xml version='1.0' encoding='utf-8'?>
<tomcat-users>
<role rolename="user"/>
<role rolename="administrator"/>
<role rolename="manager"/>
<role rolename="sales"/>
<role rolename="hr"/>
<role rolename="admin"/>
<role rolename="participant"/>
<user username="user" password="user" roles="user,sales"/>
<user username="shipper" password="shipper" roles="user,hr"/>
<user username="manager" password="manager" roles="admin,hr,manager,user,sales"/>
<user username="tadmin" password="" roles="admin,manager"/>
<user username="admin" password="admin" roles="admin,user,hr"/>
</tomcat-users>
这样就可以正常登陆了:
或者也可以配置一个JDBC Realm.
在 /$CATALINA_HOME/conf/Catalina/localhost文件夹下创建一个jbpm-console.xml
内容如下: 修改数据库用户名和密码
<Context>
<Realm className="org.apache.catalina.realm.JDBCRealm"
driverName="com.mysql.jdbc.Driver"
connectionURL="jdbc:mysql://localhost:3306/jbpm32"
connectionName="root"
connectionPassword="111"
userTable="JBPM_ID_USER u, JBPM_ID_MEMBERSHIP m, JBPM_ID_GROUP g"
userNameCol="g.TYPE_ = 'security-role' AND m.GROUP_ = g.ID_ AND
m.USER_ = u.ID_ AND u.NAME_"
userCredCol="DISTINCT u.PASSWORD_"
userRoleTable="JBPM_ID_USER u, JBPM_ID_MEMBERSHIP m, JBPM_ID_GROUP
g"
roleNameCol="g.NAME_" />
</Context>
现在你就可以 正常登陆了.
ok 现在jbpm-console已经在tomcat上运行成功了.
使用 manager, user, admin, shipper 登陆 来查看每个用户的功能.
分享到:
相关推荐
【JBPM3.2.3+TOMCAT 6.0+MYSQL 5.0】是一个集成环境,用于实现基于工作流的应用程序部署和数据管理。在这个配置中,JBPM(Java Business Process Management)是核心组件,它是一个开源的工作流管理系统,提供了业务...
jbpm3.2.2是jbpm的一个版本,它在当时提供了许多关键功能,如流程定义、流程实例管理、任务管理和事件处理等。本入门例子旨在帮助初学者快速理解和应用jbpm。 在jbpm3.2.2中,工作流引擎是核心组件,它负责解析流程...
开源工作流JBPM3.2.2开发环境部署 Ant Eclipse插件安装以及数据库
jbpm 3.2.2 表说明 详尽解释
该文件是jbpm (工作流系统)的数据库备份,该备份文件用于ORACLE下
在3.2.2版本中,jbpm提供了一个完善的框架,支持工作流的建模、执行和跟踪。 在描述中提到,由于文件大小的限制,用户需要自行添加jbpm3.2.2的相关依赖包以及MySQL的JDBC驱动。这表明该工程可能不包含所有的库文件...
### jbpm3.2.2在mysql中字段的类型的错误:解决方案与理解 #### 引言 在使用jbpm3.2.2(一个开源的工作流引擎)与MySQL数据库进行集成时,可能会遇到关于字段类型不匹配的问题。这通常发生在初始化数据库结构或...
jboss jbpm 5.0 最新版jboss jbpm 5.0 最新版jboss jbpm 5.0 最新版jboss jbpm 5.0 最新版jboss jbpm 5.0 最新版jboss jbpm 5.0 最新版jboss jbpm 5.0 最新版
在3.2.2版本中,jbpm提供了对工作流建模、执行、监控和管理的功能。它支持BPMN(Business Process Modeling Notation)标准,使得业务流程可以被直观地描述和理解。jbpm3.2.2集成了持久化框架Hibernate,使得流程...
在这个配置中,我们将探讨如何将这些框架集成在一起,创建一个基于Spring 2.5.4、Hibernate 3.2.6、Struts2和jbpm3.2.2的应用。 1. **Spring框架**: - Spring 2.5.4作为应用的核心容器,负责管理应用的bean(对象...
JBPM3.2.2源码,工作流引擎。JBPM,全称是Java Business Process Management(业务流程管理),它是覆盖了业务流程管理、工作流、服务协作等领域的一个开源的、灵活的、易扩展的可执行流程语言框架。jBPM是公开源...
### jBPM4.4 在 Tomcat + MySQL 环境下的安装指南 #### 一、准备工作 在开始安装之前,我们需要确保以下几项准备工作已经完成: 1. **下载相关软件**: - [jBPM 4.4](http://sourceforge.net/projects/jbpm):一...
本文将详细介绍如何在Windows 2003环境下,使用SUN JDK1.6U4、Tomcat6.0.14和MySQL 6.0部署jBPM-JPDL v3.2。 **1. 系统准备** 确保操作系统为Windows 2003,并安装SUN JDK1.6U4。安装JDK后,需设置`JAVA_HOME`环境...
在这个场景中,我们讨论的是如何将Spring 2.5.4、Hibernate 3.2.6、Struts2以及jbpm 3.2.2这四个组件集成到一个项目中。下面将分别介绍这些组件以及它们在整合过程中的配置细节。 1. **Spring 2.5.4**: Spring 是...
标题“jbpm支持表_mysql的sql文件”表明...如果你正准备在MySQL环境下部署jbpm,阅读类似Tomatulip的博客文章将非常有帮助,它们会提供实战经验,避免常见的配置错误,并帮助你更好地利用jbpm进行流程自动化和管理。
总结来说,jBPM + Tomcat + MySQL的集成涉及到多个关键组件,包括jBPM的核心库、数据库连接驱动、JSP和JSF处理库以及XML处理工具。理解这些组件的作用和交互对于成功部署和运行基于jBPM的业务流程管理系统至关重要。...
【jbpm-5.0.0-installer.zip_jbpm_jbpm 5.0_jbpm installer】这个压缩包是JBoss Business Process Management (jbpm) 的5.0版本安装程序,它提供了完整的jbpm源代码,让我们来深入探讨一下jbpm以及它的5.0版本。...
在这个项目中,我们将讨论如何在Tomcat服务器上部署一个名为"jbpmweb"的工程,实现流程的部署和运行。 首先,我们需要理解jbpmweb工程的基本结构。这个工程通常包含了JBPM的核心库,如jbpm-bpmn2、jbpm-persistence...
在JBPM 3.2.2版本中,主要提供了jbpm-jpdl-suite-3.2.2.zip这个压缩包,其中包含了用于绘制流程图的相关工具和库。 JBPM(Java Business Process Management)是开源社区开发的一个工作流引擎,它允许开发者以模型...
总之,这个压缩包提供的资源和指南旨在帮助用户在Tomcat上成功部署和配置jbPM4,使用MySQL作为其数据存储。整个过程涉及Java环境、MySQL数据库的配置、jbPM4的WAR文件部署以及Tomcat服务器的设置。遵循正确的步骤,...