开始了工做流的开发,前辈们都已经作的很好了,因此,简单的总结了几个例子,能够从如下连接处获得开发的简单流程.html
了解一下什么是Jbpm及特色。
jBPM,全称是Java Business Process Management,是一种基于J2EE的轻量级工做流管理系统。jBPM是公开源代码项目,它使用要遵循 Apache License。jBPM在2004年10月18日,发布了2.0版本,并在同一天加入了JBoss,成为了JBoss企业中间件平台的一个组成部分,它的名称也改为JBoss jBPM。
jBPM最大的特点就是它的商务逻辑定义没有采用目前的一些规范,如WfMC´s XPDL, BPML, ebXML, BPEL4WS等,而是采用了它本身定义的JBoss jBPM Process definition language (jPdl)。jPdl认为一个商务流程能够被看做是一个UML状态图。jPdl就是详细定义了这个状态图的每一个部分,如起始、结束状态,状态之间的转换等。
jBPM的另外一个特点是它使用Hibernate来管理它的数据库。Hibernate是目前Java领域最好的一种数据持久层解决方案。经过Hibernate,jBPM将数据的管理职能分离出去,本身专一于商务逻辑的处理。
说不如作,下面作个例子感觉如下吧。
一、 环境准备
Jdk1.5安装不在赘述。
Eclipse安装不在赘述。 jBPM 提供了一个 Eclipse 插件用来辅助开发 jBPM 。
本文用的版本是: Eclipse3.2+ MyEclipse 5.5.1 GA
二、 安装jbpm
按下图红色标记处下载:
介绍一下上面的Package:
JBoss jBPM jPDL
是
jBPM
的软件包
JBoss jBPM jPDL Suite
是一个综合包,它包括了
jBPM
软件包、开发插件、一个配置好了的基于
JBoss
的
jBPM
示例、一些数据库配置文件示例。
JBoss jBPM Process Designer Plugin
是辅助开发
jBPM
的
Eclipse
插件。
JBoss jBPM BPEL Extension jBPM
关于
BPEL
的扩展包
本指南选择下载:
JBoss jBPM jPDL Suite
。下载后解压到
D:/ jbpm-starters-kit-3.1.4
,目录下含有五个子目录:
jbpm
jBPM
的软件包
jbpm-bpel
只含有一个网页
jbpm-db
各类数据库
hibernate
配置文件示例,有些还包含了相应的
jdbc
驱动程序。
jbpm-designer
辅助开发
jBPM
的
E
clipse
插件,具体在
jbpm-gpd-feature
子目录中
jbpm-server
一个已经配置好了的基于
JBoss
的
jBPM
示例
三、 Jbpm例子
jbpm-server 目录是一个已经配置好的了 jBPM 示例。
例子用的框架是Jsf+Hibernate,数据库是 hsqldb(一个内存数据库)。
双击 jbpm-server 目录下的 start.bat 文件,启动 JBoss 服务。这时会打开一个 DOS 窗口,启动完成后,日志会不断输出,其中最后一句是“ 13:55:39,937 DEBUG [StaticNotifier] going to wait for (CMD_EXECUTOR, java.lang.Object@1df59bd) ”,这表示 jBPM 在开始工做了,它不断进行轮询。
这是一个已经用 jBPM 开发好的用户定单流程,具备下单、审核、估价等流程。它所用的数据库是一个内置的数据库。
以 cookie monster 用户登陆,选择“ create new web sale order ”能够建立一个定单。以下图所示,在图左边是填写的定单状况,右边一整个订货流程的示意图,红色框表示流程进行到哪一步了。填写好定单好,选择“ Save and Close Task ”,完成定单提交。
选择右上角的“ Login as another user ”以另一个用户名 ernie 登陆。这时能够看到 ernie 用户的任务列表中多了一项。
点进去后,显示以下画面。这个示例对中文的支持很差,全都显示成了 unicode 码了。无论这什么多,反正知道是这么回事就好了。在 comment 项填写意见,选 OK 按钮,进入到下一步。若是选择 more info needed 按钮,则打回给 cookie monster 用户修改定单。
下面的流程,这里就再也不赘述了。因为流程是设计好的,并且用的数据库是个内存数据库,也看不到数据是如何记录的,看了这个例子可能有点迷糊,彷佛感受不到jBPM在起做用,其实jBPM 始终是在后台起着做用,只有经过本身写个例子,设计一下流程,看一下数据库表结构才能真正明白其中的道理,《Jbpm工做流(二)》中将介绍这些。
四、建立jbpm项目
4.1要引入可视化插件
jbpm提供了在eclipse下的一个可视化插件,经过它咱们能够方便的定义工做流,介绍一下eclipse如何添加该插件?
打开jbpm-starters-kit-3.1.4/jbpm-designer/jbpm-gpd-feature目录,咱们能够看到下面有一个eclipse文件夹,这里咱们经过link的方式为eclipse添加该插件。
在
{eclipse_home}/link文件夹下新建jbpm-designer.link文件,用记事本打开该文件加入以下一行:
path=D://jbpm-starters-kit-3.1.4//jbpm-designer//jbpm-gpd-feature
后面的路径即为该插件的存放路径,根据我的状况修改。注意,这里的分隔符使用双斜杠
//或者用单斜杠/。
4.2 引入jbpm包,使eclipse具备jbpm环境
Eclipse编译jbpm可视化流程图,有时特别慢,甚至会致使死机,缘由是未导入jbpm包的问题,可视化流程图须要有jbpm环境,介绍一下如何解决这个问题?
打开Eclipse----
window----Preferences
以下图
点击【Add】,以下图:
Name:随便录入
Location: D:/jbpm-starters-kit-3.1.4/jbpm-starters-kit-3.1.4/jbpm,此路径为下载的
jbpm-starters-kit-3.1.4包中的jbpm文件夹,即jBPM 的软件包。
4.3 建立咱们本身的jbpm
打开eclipse---
new--Project,以下图:
选择Process Project,点击【Next】,以下图
name:工程名称,随意录入。
Location:就是在上面所讲的jBPM 的软件包。点击【finish】后,建立以下项目:
以上就建立了一个jbpm的项目,里面的代码和流程图会自动建立,也说明你的eclipse已具备jbpm环境。
当插件引入成功后,
打开Eclipse----
window----Preferences
出现
JBoss jBPM的目录,表示插件引入成功。