jboss jbpm + tomcat6.0.13 + mysql5.0的配置
来源:互联网 发布:linux常用命令及用法 编辑:程序博客网 时间:2024/05/17 23:19
本人正在学习jboss jbpm工作流引擎,希望大家给指点指点!
基于Tomcat和MySQL的部署:
现在要把上面演示的例子部署到Tomcat中,并将数据数配置为MySQL。
STEP 1,初始化数据库
jBPM 需要数据库支持, jBPM会把自己的一个初始化数据存储到数据库,同时工作流的数据也是存储到数据库中的。 jBPM 使用 Hibernate作为的存储层。在E:/Java/tools/jbpm-jpdl-3.2.2/db/目录下有个jbpm.jpdl.mysql.sql数据库脚本文件。我们不能直接导入该文件,会提示有错误, 应为该文件格式有问题, 首先打开该文件(推荐UltraEdit),把前面的 alter table JBPM_XX 语句都删除(因为我们使用的是新的数据库,所以需要这些语句,这个脚本文件是升级3.2的数据库表结构用的) 然后在每一行前面添加一个分号 不然脚本执行会出错。这样就可以用source命令导入了。导入后,表结构创建成功。
STEP 2,准备发布包
在E:/Java/tools/jbpm-jpdl-3.2.2/deploy文件夹下 运行ant customize.console.for.tomcat。执行命令后会在 E:/Java/tools/jbpm-jpdl-3.2.2/deploy/customized文件夹下生成一个jbpm-console.war文件,用WinRaR解压开,并复制到已安装Tomcat的webapps目录下,jbpm还需三个依赖类库,分别是commons-collections.jar、ehcache-1.2.3.jar、jta.jar,当然还有个MySQL驱动mysql-connector-java-5.0.7-bin.jar,添加这些jar文件 到 /$CATALINA_HOME/webapps/jbpm-console/WEB-INF/lib目录下。
STEP 3,修改Hibernate数据库配置文件
修改/$CATALINA_HOME/webapps/jbpm-console/WEB-INF/classes下hibernate.cfg.xml文件。这是Hibernate的数据库配置文件,要做一些修改,原来内容如下:
<!-- hibernate dialect -->
<property name="hibernate.dialect">org.hibernate.dialect.HSQLDialect</property>
<!-- JDBC connection properties (begin) ===
<property name="hibernate.connection.driver_class">
org.hsqldb.jdbcDriver</property>
<property name="hibernate.connection.url">jdbc:hsqldb:mem:jbpm</property>
<property name="hibernate.connection.username">sa</property>
<property name="hibernate.connection.password"></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) -->
修改后如下:
<!-- hibernate dialect -->
<property name="hibernate.dialect">
org.hibernate.dialect.MySQLInnoDBDialect</property>
<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">jbpmuser</property>
<property name="hibernate.connection.password">shine</property>
<property name="hibernate.cache.provider_class">
org.hibernate.cache.HashtableCacheProvider</property>
STEP 4,设置Tomcat安全域
有两种方法都可以实现,但摧荐第一种方法。
方法一:配置一个JDBC Realm,在/$CATALINA_HOME/webapps/jbpm-console/META-INF目录下新建context.xml文件,内容如下:
<?xml version="1.0" encoding="UTF-8"?>
<Context>
<Realm className="org.apache.catalina.realm.JDBCRealm"
driverName="com.mysql.jdbc.Driver"
connectionURL="jdbc:mysql://localhost:3306/jbpm"
connectionName="jbpmuser"
connectionPassword="shine"
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>
方法二:直接修改 /$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>
STEP 5,初始化基础的用户数据
在MySQL数据库中执行以下SQL语句,进行初始化用户信息,如下:
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);
STEP 6,启动Tomcat服务
启动时查看Tomcat的日志,检查是否正常启动,未添加所有支持库或数据库配置出错,都会引起启动失败。
注意:到此为止启动Tomcat,JBPM服务就能正常运行了,已经可以在上面发布流程,接着第五步中部署一个jbpm自带的流程例子。
STEP 7,发布例子流程
打开网页:http://localhost:8080/jbpm得到如下页面就说明已经部署成功:
但是在打开时报错:
HTTP Status 404 - /jbpm-console/search/tasks.jsf
type Status report
message/jbpm-console/search/tasks.jsf
descriptionThe requested resource (/jbpm-console/search/tasks.jsf) is not available
就是说那个/jbpm-console/search/tasks.jsf找不到,只有tasks.xhtml
什么问题啊?
- jboss jbpm + tomcat6.0.13 + mysql5.0的配置
- MySQL5.0+Tomcat6.0的数据源配置
- Tomcat6.0配置MySql5.0数据库的步骤
- jbpm+jboss+oracle9i配置
- (转帖)Tomcat6.0+MyEclipse6.0+mysql5.0数据库连接池配置!
- Tomcat6.0+MyEclipse6.0+mysql5.0数据库连接池配置!
- Tomcat6.0+MyEclipse6.0+mysql5.0数据库连接池配置
- Tomcat6.0+MyEclipse6.0+mysql5.0数据库连接池配置!
- JBoss JBPM 实践系列(二)--- jbpm设计器的配置和使用
- JBoss JBPM 实践系列(二)--- jbpm设计器的配置和使用
- tomcat6.0的虚拟目录配置
- Tomcat6.0的基本配置
- tomcat6.0的数据源配置
- Tomcat6.0的安装配置
- tomcat6.0 数据源的配置
- Tomcat6.0 SSL的配置
- Tomcat6.0的安装配置
- Tomcat6.0的安装配置
- C++异常处理知多少(二)
- 搜索引擎,文本数据挖掘继续探索
- C#操作配置文件app.config
- 保护模式 VS 实模式
- Linux下的AT&T语法(即GNU as 汇编语法)入门
- jboss jbpm + tomcat6.0.13 + mysql5.0的配置
- SQL经典面试题及答案
- 关于爱情 (转)
- About Mother’s Day
- 重构之代码坏味道
- J2ME环境搭建
- 开发人员搭建自己的开发工具库
- 企业的竞争,归根结底是人才的竞争。人才是企业的生命所在,如何管好人才、用好人才、培养和留住人才,则成为企业在激烈的竞争中成长发展的关键。
- 时间管理是一种很特别的技巧