`
Bluesnails
  • 浏览: 24295 次
  • 性别: Icon_minigender_1
  • 来自: 北京
最近访客 更多访客>>
社区版块
存档分类
最新评论

Tomcat5.5.14+MSSQL2000部署JBPM3.2.1 DEMO

    博客分类:
  • JBPM
阅读更多

学习JBPM已经2周了,看了Java Eye上各位老大的帖子,收获良多。今天尝试将JBPM3.2.1的Web-console发布至Tomcat+MSSQL,记录学习过程:)

1          部署环境:
JDK1.5.9
Tomcat5.5.14
JBPM3.2.1
MS SQL Server2000
2          步骤:
2.1         创建数据库表
1.         在SQL2000中创建JBPM数据库
2.         创建数据库表,脚本见db/jbpm.jpdl.mssql.sql ,在查询分析器中执行后生成JBPM所需的所有表。
2.2         创建jBPM示例应用
1.         执行deploy下的build.xml文件 ant customize.console.for.tomcat,在deploy文件夹下生成customized文件夹,其下jbpm-console.war即为我们所需应用,要使其在Tomcat下正常运行,先将其解压缩,还需要进行如下一系列的改动。ant
2.         修改WEB-INF/classes/hibernate.cfg.xml如下:
 

<property name="hibernate.dialect">org.hibernate.dialect.SQLServerDialect</property>   

              <property name="hibernate.connection.driver_class">net.sourceforge.jtds.jdbc.Driver</property>   

              <property name="hibernate.connection.url">jdbc:jtds:sqlserver://localhost:1433/jbpm3_2</property>   

              <property name="hibernate.connection.username">sa</property>   

              <property name="hibernate.connection.password">sa</property>

              <property name="hibernate.show_sql">true</property>

<o:p> </o:p>

    <!---->

   

    <property name="hibernate.cache.provider_class">org.hibernate.cache.HashtableCacheProvider</property>

    <property name="hibernate.transaction.factory_class">org.hibernate.transaction.JDBCTransactionFactory</property>
 
3.         拷贝如下jar包至WEB-INF/lib
jboss-j2ee.jar;commons-collection.jars;el-api.jar;el-ri.jar; jtds-1.2.jar(MSSQL 的JDBC Driver)
4.         创建用户数据
SET IDENTITY_INSERT JBPM_ID_GROUP ON;
INSERT INTO JBPM_ID_GROUP (ID_,CLASS_,NAME_,TYPE_,PARENT_) VALUES(1,'G','sales','organisation',NULL);
INSERT INTO JBPM_ID_GROUP (ID_,CLASS_,NAME_,TYPE_,PARENT_) VALUES(2,'G','admin','security-role',NULL);
INSERT INTO JBPM_ID_GROUP (ID_,CLASS_,NAME_,TYPE_,PARENT_) VALUES(3,'G','user','security-role',NULL);
INSERT INTO JBPM_ID_GROUP (ID_,CLASS_,NAME_,TYPE_,PARENT_) VALUES(4,'G','hr','organisation',NULL);
INSERT INTO JBPM_ID_GROUP (ID_,CLASS_,NAME_,TYPE_,PARENT_) VALUES(5,'G','manager','security-role',NULL);
SET IDENTITY_INSERT JBPM_ID_GROUP OFF;
 
SET IDENTITY_INSERT JBPM_ID_USER ON;
INSERT INTO JBPM_ID_USER (ID_,CLASS_,NAME_,EMAIL_,PASSWORD_) VALUES(1,'U','user','user@sample.domain','user');
INSERT INTO JBPM_ID_USER (ID_,CLASS_,NAME_,EMAIL_,PASSWORD_) VALUES(2,'U','manager','manager@sample.domain','manager');
INSERT INTO JBPM_ID_USER (ID_,CLASS_,NAME_,EMAIL_,PASSWORD_) VALUES(3,'U','admin','admin@sample.domain','admin');
INSERT INTO JBPM_ID_USER (ID_,CLASS_,NAME_,EMAIL_,PASSWORD_) VALUES(4,'U','shipper','shipper@sample.domain','shipper');
SET IDENTITY_INSERT JBPM_ID_USER OFF;
 
SET IDENTITY_INSERT JBPM_ID_MEMBERSHIP ON;
INSERT INTO JBPM_ID_MEMBERSHIP (ID_,CLASS_,NAME_,ROLE_,USER_,GROUP_) VALUES(1,'M',NULL,NULL,2,4);
INSERT INTO JBPM_ID_MEMBERSHIP (ID_,CLASS_,NAME_,ROLE_,USER_,GROUP_) VALUES(2,'M',NULL,NULL,3,4);
INSERT INTO JBPM_ID_MEMBERSHIP (ID_,CLASS_,NAME_,ROLE_,USER_,GROUP_) VALUES(3,'M',NULL,NULL,4,4);
INSERT INTO JBPM_ID_MEMBERSHIP (ID_,CLASS_,NAME_,ROLE_,USER_,GROUP_) VALUES(4,'M',NULL,NULL,4,3);
INSERT INTO JBPM_ID_MEMBERSHIP (ID_,CLASS_,NAME_,ROLE_,USER_,GROUP_) VALUES(5,'M',NULL,NULL,1,3);
INSERT INTO JBPM_ID_MEMBERSHIP (ID_,CLASS_,NAME_,ROLE_,USER_,GROUP_) VALUES(6,'M',NULL,NULL,2,3);
INSERT INTO JBPM_ID_MEMBERSHIP (ID_,CLASS_,NAME_,ROLE_,USER_,GROUP_) VALUES(7,'M',NULL,NULL,3,3);
INSERT INTO JBPM_ID_MEMBERSHIP (ID_,CLASS_,NAME_,ROLE_,USER_,GROUP_) VALUES(8,'M',NULL,NULL,3,2);
INSERT INTO JBPM_ID_MEMBERSHIP (ID_,CLASS_,NAME_,ROLE_,USER_,GROUP_) VALUES(9,'M',NULL,NULL,2,2);
INSERT INTO JBPM_ID_MEMBERSHIP (ID_,CLASS_,NAME_,ROLE_,USER_,GROUP_) VALUES(10,'M',NULL,NULL,2,5);
INSERT INTO JBPM_ID_MEMBERSHIP (ID_,CLASS_,NAME_,ROLE_,USER_,GROUP_) VALUES(11,'M',NULL,'boss',2,1);
INSERT INTO JBPM_ID_MEMBERSHIP (ID_,CLASS_,NAME_,ROLE_,USER_,GROUP_) VALUES(12,'M',NULL,NULL,1,1);
SET IDENTITY_INSERT JBPM_ID_MEMBERSHIP OFF;
 
5.         设置Tomcat的JDBC Realm
In 3.1 jBPM used it's own mechanism, in 3.2 the authentication is left to the container.”这句话重点注意,3.2authentication交给容器来做!具体Realm是什么还没搞懂,只知道是一种容器管理安全性的方式。先照着做吧。
在Tomcat的conf/Catalina/locahost目录下新建jbpm-console.xml 内容如下:
<context></context>
 <context></context><o:p></o:p>

       <realm classname="org.apache.catalina.realm.JDBCRealm"></realm>

              driverName="net.sourceforge.jtds.jdbc.Driver"

              connectionURL="jdbc:jtds:sqlserver://localhost:1433/jbpm3_2"

              connectionName="sa" connectionPassword="sa"

              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_" /><o:p></o:p>

 
6.         拷贝修改过的jbpm-console至webapp目录下。输入http://localhost:8080/jbpm-console,登录即可。
7.         补:我们未将任何流程发布到应用中,所以用户登录后看不到任何流程定义。发布流程可以直接使用jbpm designer.将做好的流程,如websale直接部署到jbpm-console中就可以了。
 
 
3          参考
1.         http://wiki.jboss.org/wiki/Wiki.jsp?page=JbpmOnTomcat
分享到:
评论
1 楼 283360187 2008-12-03  
没成功

相关推荐

    CentOS 7.0编译安装Nginx1.6.0+MySQL5.6.19+PHP5.5.14

    ### CentOS 7.0 编译安装 Nginx1.6.0 + MySQL5.6.19 + PHP5.5.14 #### 一、环境准备与配置 在开始部署 LNMP(Linux+Nginx+MySQL+PHP)环境之前,首先需要对 CentOS 7.0 系统进行必要的环境配置。 **1. 配置防火墙...

    Nginx1.6.0+MySQL5.6.19+PHP5.5.14 软件包

    安装ZIBBIX Nginx1.6.0+MySQL5.6.19+PHP5.5.14 软件包;这个网址是搭建zabbix的详细步骤 https://www.osyunwei.com/archives/7984.html

    php-5.5.14.tar

    总的来说,PHP 5.5.14是一个强大且灵活的Web开发工具,通过源码包在Linux环境中安装,可以让开发者更好地控制其部署和配置。通过仔细阅读提供的文档,你可以根据具体需求定制安装过程,确保PHP与你的系统和应用程序...

    CentOS 7.0编译安装Nginx1.6.0+MySQL5.6.19+PHP5.5.14 软件包

    php-5.5.14.tar.gz pcre-8.35.tar.gz openssl-1.0.1h.tar.gz zlib-1.2.8.tar.gz cmake-2.8.11.2.tar.gz libmcrypt-2.5.8.tar.gz yasm-1.2.0.tar.gz t1lib-5.1.2.tar.gz gd-liblibgd-2.1.0.tar.gz libvpx-v1.3.0.tar....

    nginx-1.6.0+mysql-5.6.19+php-5.5.14

    nginx-1.6.0+mysql-5.6.19+php-5.5.14

    Linux下Apache+Tomcat集群指南

    ### Linux下Apache+Tomcat集群指南 #### 一、系统集群环境安装指南 **1.1 文档说明** 本文档旨在详细介绍如何在Linux环境下搭建Apache+Tomcat集群,并实现负载均衡及Session复制等功能。该文档适合希望提高Web...

    mysql-5.5.14.tar.gz

    2、编译安装mysql-5.5.14 useradd mysql tar zxf mysql-5.5.14.tar.g cd mysql-5.5.14 CFLAGS="-O3" CXX=gcc CXXFLAGS="-O3 -felide-constructors -fno-exceptions -fno-rtti" cmake . -LH|more //CMake...

    php-5.5.14.tar.gz

    标题中的"php-5.5.14.tar.gz"是一个包含PHP 5.5.14版本源代码的归档文件,它使用了tar和gzip两种工具进行压缩。在Linux和Unix-like系统中,这种格式很常见,用于打包和压缩多个文件或目录。"tar"命令用于将多个文件...

    CentOS 7.0编译安装Nginx1.6.0+MySQL5.6.19+PHP5.5.14教程

    ### CentOS 7.0 编译安装 Nginx1.6.0 + MySQL5.6.19 + PHP5.5.14 教程 #### 一、配置防火墙,开启80端口、3306端口 在进行软件安装前,确保服务器的防火墙配置正确至关重要。CentOS 7.0 默认使用的是 firewall,但...

    php-5.5.14.tar.bz2

    php-5.5.14.tar.bz2

    Tomcat5[1].5在Window下的安装.doc

    Tomcat会自动解压并部署应用。删除`Webapps`下的其他自带应用,若需设置默认主页,如`a.jsp`,需修改`Server.xml`中的`&lt;Context&gt;`标签。 - **方法二**:通过编辑`C:\Program Files\Apache Software Foundation\...

    CentOS 7.0编译安装Nginx1.6.0+MySQL5.6.19+PHP5.5.14.docx

    在本教程中,我们将详细介绍如何在CentOS 7.0上编译安装Nginx 1.6.0、MySQL 5.6.19和PHP 5.5.14。这个过程涉及到多个步骤,包括环境配置、依赖库安装、源代码编译以及服务配置。以下是详细的步骤: 1. **系统环境...

    Apache版UPUPW PHP5.5系列集成包UP-A5.4(32位)

    UPUPW Apache版PHP5.5系列环境集成包UP-A5.4属于技术前沿的探路者,采用Apache2.4.10+PHP5.5.14+MySQL5.7.4的最新组合。 特别说明: PHP官方从PHP5.5开始就不再支持Windows XP和2003,这些系统已经有十年

    mysql-5.5.14 64位

    mysql-5.5.14 适用于windows x64位系统

    linux下apache+tomact基于集群负载均衡session复制

    在部署 Apache+Tomcat 集群之前,需要先了解服务器的基本配置: - **操作系统**:CentOS release 5.6 - **数据库**:MySQL 5.5.14 - **主服务器 IP**:16.190.132.9 - **从服务器 IP**:16.190.132.9 - **软件环境*...

    MySQL-client-5.5.14-1.rhel5.i386.rpm

    MySQL安装包 MySQL-server-5.5.14-1.rhel5.i386.rpm、MySQL-client-5.5.14-1.rhel5.i386.rpm

    CentOS 7.0编译安装lnmp教程(Nginx1.6.0+MySQL5.6.19+PHP5.5.14)

    在本教程中,我们将深入探讨如何在CentOS 7.0操作系统上编译安装LNMP环境,即Nginx 1.6.0、MySQL 5.6.19和PHP 5.5.14。这个过程对于那些希望自定义安装组件、优化性能或者学习服务器管理的用户来说是很有价值的。 #...

    LimeWire for Mac v5.5.14.zip

    LimeWire是一个在互联网上与任何人能够搜索和共享计算机文件软件.它相容於Gnutella软件的共享文件的协定,更可联结至没有使用Gnutella软件的电脑上,在电脑一启动时就会连结到LimeWire Gateway上(sye)。...

    LimeWire for Linux v5.5.14.zip

    LimeWire这是一个可以搜寻任何一个在网络上的个别电脑上的共享文件的软件;它相容於Gnutella软件的共享文件的协定,更可联结至没有使用Gnutella软件的电脑上,在电脑一启动时就会连结到LimeWire Gateway上。

Global site tag (gtag.js) - Google Analytics