jBPM工作流 之jBPM3

本文涉及的产品
云数据库 RDS MySQL,集群版 2核4GB 100GB
推荐场景:
搭建个人博客
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS MySQL,高可用版 2核4GB 50GB
简介: 前一段时间的项目涉及jBPM3的项目升级,把其中学习到的一些内容整理一下,首先看看jBPM3的使用,了解了这个,对于升级到4有一定的绑定。 下载和安装 http://sourceforge.net/projects/jbpm/files/jBPM%203/jbpm-jpdl-3.

 前一段时间的项目涉及jBPM3的项目升级,把其中学习到的一些内容整理一下,

首先看看jBPM3的使用,了解了这个,对于升级到4有一定的绑定。 

下载和安装

http://sourceforge.net/projects/jbpm/files/jBPM%203/jbpm-jpdl-3.2.8/

下载jbpm-installer-3.2.8.jar后

将 jboss-5.0.1.GA.zip 放到 jbpm-3.2.8\opt

clip_image002

使用java -jar jbpm-installer-3.2.8.jar执行安装,如上,选择mysql和jboss的路径

配置

Mysql

建立mysql数据库jbpm3,建立用户/密码:jbpm3/ jbpm3

首先执行 jbpm3\jbpm-3.2.8\database\jbpm.jpdl.mysql.sql

然后 jbpm-3.2.8/docs/userguide/html/ch07.html#d0e1910 插入如下的数据

insert into JBPM_ID_USER (ID_, CLASS_, NAME_, EMAIL_, PASSWORD_)

values ('1', 'U', 'user', 'sample.user@sample.domain', 'user');

insert into JBPM_ID_USER (ID_,CLASS_, NAME_, EMAIL_, PASSWORD_)

values ('2', 'U', 'manager', 'sample.manager@sample.domain', 'manager');

insert into JBPM_ID_USER (ID_,CLASS_, NAME_, EMAIL_, PASSWORD_)

values ('3', 'U', 'shipper', 'sample.shipper@sample.domain', 'shipper');

insert into JBPM_ID_USER (ID_,CLASS_, NAME_, EMAIL_, PASSWORD_)

values ('4', 'U', 'admin', 'sample.admin@sample.domain', 'admin');

JBOSS 5

jboss-5.0.1.GA\server\default\conf\login-config.xml加入用户验证

<application-policy name="soa">

<authentication>

<login-module code="org.jboss.security.auth.spi.DatabaseServerLoginModule" flag="required">

<module-option name="dsJndiName">java:/JbpmDS</module-option>

<module-option name="principalsQuery">

SELECT PASSWORD_ FROM JBPM_ID_USER WHERE NAME_=?

</module-option>

<module-option name="rolesQuery">

SELECT g.NAME_ ,'Roles'

FROM JBPM_ID_USER u,

JBPM_ID_MEMBERSHIP m,

JBPM_ID_GROUP g

WHERE g.TYPE_='security-role'

AND m.GROUP_ = g.ID_

AND m.USER_ = u.ID_

AND u.NAME_=?

</module-option>

</login-module>

</authentication>

</application-policy>

以上的soa和

jboss-5.0.1.GA\server\default\deploy\jbpm\jsf-console.war\WEB-INF\jboss-web.xml

<security-domain>java:/jaas/soa</security-domain>

<context-root>jbpm-console</context-root>

对应

jboss-5.0.1.GA\server\default\deploy\jbpm\jbpm-mysql-ds.xml的内容需要修改成如下,否则会出现事务错误

<?xml version="1.0" encoding="UTF-8"?>

<datasources>

<local-tx-datasource>

<jndi-name>JbpmDS</jndi-name>

<connection-url>jdbc:mysql://localhost:3306/jbpm3</connection-url>

<driver-class>com.mysql.jdbc.Driver</driver-class>

<user-name>jbpm3</user-name>

<password>jbpm3</password>

<metadata>

<type-mapping>MySQL</type-mapping>

</metadata>

</local-tx-datasource>

</datasources>

执行

jboss-5.0.1.GA\bin\run.bat 即可访问 http://localhost:8080/jbpm-console/

使用

将jbpm-3.2.8\examples\websale\src\main\jpdl\jpdl 这个目录下的内容压缩成websale.zip

http://localhost:8080/jbpm-console/ 使用admin/admin即可登录,此时可以部署流程 websale.zip

如下:

clip_image004

具体参考:

JBoss jBPM getting started guide

http://community.jboss.org/wiki/JBPM3GettingStarted

代码jbpm-console

http://grepcode.com/

相关实践学习
基于CentOS快速搭建LAMP环境
本教程介绍如何搭建LAMP环境,其中LAMP分别代表Linux、Apache、MySQL和PHP。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助 &nbsp; &nbsp; 相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
相关文章
|
XML 前端开发 Java
工作流 jbpm
  package com.jbpm.controller; import java.io.InputStream; import java.util.List; import java.
1058 0
|
应用服务中间件 Android开发 Java
安装JBpm
原文 http://www.cnblogs.com/default/archive/2012/02/28/2370673.html   自动安装(ant start.demo)太慢,所以手动安装。
868 0
|
API
jBPM 5 的点滴
发布地址 http://sourceforge.net/projects/jbpm/files/jBPM%205/  http://www.jboss.org/jbpm/documentation   jBPM5引入了新的API、新的工具并支持BPMN 2.
1016 0
|
JSON 数据格式 网络架构
工作流jBPM使用总结
1 软件版本变化较大 版本3,4 数据库完全结构不一样   2 pom.xml 配置需要注意 和其他的软件库的冲突问题 如:    org.jbpm.jbpm4    jbpm-pvm    4.
1094 0
|
JSON Java 数据格式
jbpm5.1介绍(11)
Jbpm-gwt-console源码编译 从svn下载,svn的下载地址是 http://anonsvn.jboss.org/repos/soag/bpm-console/tags/bpm-console-2.
885 0
|
测试技术
jbpm5.1介绍(10)
Junit测试异常事件触发 下面的示例中测试在程序中触发异常事件的流程,流程如下 测试程序 public void testTimerBoundaryEventInterrupting() throws Exception { KnowledgeBase kbase = crea...
875 0
|
测试技术
jbpm5.1介绍(9)
Junit测试调用子流程 下面的示例中测试在程序中调用其它程序的子流程的示例,需要加载两个配置文件 和 需要指定属性 下面是调用的示例程序 public void testCallActivity() throws Exception { System.
892 0