您的位置:首页 > 产品设计 > 产品经理

JBPM5 实例教程

2014-08-07 13:24 323 查看
原文地址:实例教程">JBPM5 实例教程作者:chriswuJBPM 5 新鲜出炉了,这两天尝了尝鲜,还不错。
1. 安装
首先需要安装ant和JRE

然后去Jboss网站上下载一个demo installer,
目前最新的文件是jbpm-5.1-SNAPSHOT-installer.zip,将它解压缩到本地硬盘,会生成一个jbpm-installer文件夹。
从命令行进入该文件夹,运行 ant install.demo
将开始下载并安装jboss, eclipse, drool这些组件,时间会比较久,如果系统提示Build
Failed,那就是由于某个下载没有成功,在命令行里看一个是什么文件没有下载成功,然后去手动搜索该文件,并将其下载到jbpm-installerlib下。直到命令行提示Build
Successful,就说明安装成功了。如果需要用到报表功能,则需要下载birt,将jbpm-installerbuild.properties中的jBPM.birt.download=false改成jBPM.birt.download=true。

2.启动
在命令行运行 ant start.demo
如果提示build failed, jboss didn't start within 5 minutes,
有可能是你的8080端口上有其他服务。或者是你电脑配置不够,可以将jbpm-installerbuild.xml里的start
Jboss AS部分里的waitfor maxwait =5 改成 10,这样就给你电脑10分钟时间启动jboss。
当看到eclipse打开后,就说明启动成功了!

3.创建一个小流程
功能是提示用户输入月收入,然后根据该收入,判断该用户是否可以开信用卡,然后给出结果。

在左边导航栏按右键,选择new->other->jbpm->jbpm
project,给project取名trial。

双击导航栏里的trial->src/main/resource下的sample.bpmn,会在主界面打开该流程定义,将其改为如下的流程:


实例教程" TITLE="[转载]JBPM5 实例教程" />


首先为该流程的properties(在该流程图下面的一排小按键里有一个Properties)添加两个变量,type和income,类型为String和Integer,
type用来储存客户是qualified还是unqualified,income是客户输入的月收入。
然后点击input这个node,在它的Properties中的Action属性加入一段代码,如下图:


实例教程" TITLE="[转载]JBPM5 实例教程" />


在Action editor的imports里加上:import java.io.*,然后点击OK保存。

点击第一个gateway
node(流程图里带X的绿色节点),将它的Type改成XOR,然后编辑Constraints,如下图:


实例教程" TITLE="[转载]JBPM5 实例教程" />


点击Edit,编辑流程走左边分支(Qualified)的条件,在弹出窗口中加入如下代码:


实例教程" TITLE="[转载]JBPM5 实例教程" />


这表示当用户的收入大于2000元时,流程走Qualified这边,表示客户可以办理信用卡。
同样方法编辑Unqualified那一边,加入代码return income <
2001;

接着点击Qualified这个node,编辑其Properties下面的Action属性,加入:
kcontext.setVariable("Type","Qualified");
这句代码将流程变量Type的值设置为Qualified。
用同样的方法为Unqualified节点的Action属性添加如下代码:
kcontext.setVariable("Type","Unqualified");

再接着点击Script这个节点,为它的Action属性加上代码,如下图:


实例教程" TITLE="[转载]JBPM5 实例教程" />


该节点确认用户收入,并输出一条消息,以通知用户是否够资格办理credit card。

现在测试一下流程,运行ProcessTest.java这个程序,系统会在console窗口输出:
Please input your monthly income
输入3000,回车,
系统会显示:

Your income is:3000
You are Qualified for the credit card

如下图:


实例教程" TITLE="[转载]JBPM5 实例教程" />
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: