FireWorkflow微内核 vs jBPM流程虚拟机

客观地说jBPM还是不错的,虽然我没有在项目中用过IBM,oracle等产品,但是我感觉jbpm比这两个大公司的产品好用,大公司的bpm产品纯粹徒有虚名。

这里,我不得不说,当前Fire workflow比jBPM还是要强一点点, 。我碰到很多人,非常迷信jBPM的流程虚拟机。对此我相当不以为然,本来计划写一系列的文章比较一下这两款产品,但是由于时间的问题,这个计划又要延迟了,甚至有点无限延迟的意思了。

今天我终于抽出时间,向大家再次吹一个牛皮,就是告诉大家如何在Fire workflow上面做一点简单的定制就能实现BPEL语言。在Fire 微内核上实现BPEL要比jBPM PVM漂亮N倍.

我没有时间实现完整的BPEL,只是实现了BPEL中的Sequnce, IF,While等语法。在附件中是一个完整的Eclipse项目,已经写好了测试用例,大家可以试验。

实现BPEL语法基本上只要在Fire 上增加3个类即可
BpelTranslator :实现Bpel语法到Fire 流程模型的转换
ActivityInstanceExtension,SynchronizerInstanceExtension :响应微内核事件驱动BPEL语言。

下面是一个复杂的BPEL语法的流程以及他的执行效果

复杂BPEL语法

当x=1,a=2,b=2时,执行结果如下:

    Sequence1 begin!
        Activity1.1 executed!
        If1.2 begin!
            IF_1.2.2 begin!
                Activity1.2.2.2 executed!
            IF_1.2.2 end!
        If1.2 end!
        While1.3 begin!
            XYZActivity executed!(1)
        While1.3 end!
        While1.3 begin!
            XYZActivity executed!(2)
        While1.3 end!
        Activity1.4 executed!
    Sequence1 end!
 

 


那么BPEL的语言结构在Fire 工作流网中表现为什么样子呢?下面这个图是While在Fire工作流网中的结构,在附件中的project中,可以打开测试类中的注释,将转换后的流程图输出来。

while转换后

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值