是JBPM稳定的开源BPM框架

use*_*158 0 jbpm

我正在从事与银行领域相关的项目,其中我们使用weblogic JPD框架进行BPM(工作流引擎).对于按照要求的新项目,我们需要使用开源BPM框架.我用谷歌搜索并遇到了JBOSS JBPM.我担心的是JBPM足够稳定地用于大规模银行应用程序,不要误会我只是因为JBPM不是商业产品,因为它是weblogic JPD.是否有任何其他开源BPM框架选项.

eze*_*eze 7

这是我的2美分.我应该首先说,我是一个java工作者,他已经和jBPM一起工作了大约两个月了.我没有通过代码,我依靠(新)jBPM 5书(这是体面的),在线用户指南,这是体面的,讨论组的问题/答案.我是BPMN的新手.我见过一些漂亮的商业工作流程产品.我敢肯定,如果你用Google搜索,你找到了Activiti,但jBPM是我的域名体验.

1)对克里斯没有不尊重,但我想知道jBPM的适应范围有多广.注意,有频繁的源提交; 我的感觉完全基于在线社区.例如,一些项目(例如Apache Camel)拥有令人难以置信的文档,最重要的是活跃的用户群.我觉得jBPM的"专业知识"领域非常小.我的意思是,如果你看一下讨论组,大多数问题的答案都来自大约六个人.值得庆幸的是,大部分项目都深入项目的开发/管理(如Kris),因此他们知识渊博.他们知道需要熟悉代码的小技巧(特殊铸造,可自动使用的变量等).

2)对我来说,演示/示例仅适用于其特定的有限背景.例如,由于包含的ant脚本,在端口8080上安装所有AS7和jBPM工具套件是一个命令.但是,我花了几天时间在7070端口站起来.你看到的很多视频设置/复制都比它们看起来要复杂得多.

3)你会使用规则吗?不要认为,因为你可以使用jBPM的规则/ drools,它们很好(或至少是直观地)集成.它们的使用,当它们被触发时,它们如何被使用,除了最基本的情况之外,在所有这些情况下都是混乱的源头.

4)大约一年前整合了Drools Flow和jBPM项目.我不确定这是否相关,但我常常被jBPM和Drools之间类似命名的类混淆,但是在不同的包中.您不会在文档中找到包使用信息.例如,当我得知我可以访问ProcessInstance时,通常我做的第一件事是system.out类名,看它是哪个实现,因为无论我是从规则还是从工作项访问它,功能都会有很大差异处理程序或脚本任务等

5)我发现了一些元素,特别是与持久性相关的元素,有点笨拙.例如,如果你想得到会话中运行的进程列表(ksession),ksession.getProcessInstances()效果很好....除非你使用持久性 - 然后,你仍然可以调用它,它返回一个空列表.在这种情况下,您必须求助于设置记录器,并从日志表中查找进程ID.这很容易做到,javadoc中有一个关于getProcessInstance的注释,但我仍然觉得这很难看.

你似乎专注于开源.我不确定你是否有报酬,或者你是否会雇用某人.我会像所有开源一样说,代码是免费的,但实际上它可以做一些事情.我在这里预测,但我怀疑使用jBPM开发大规模产品会比你预期的要多得多.此外,谷歌"jbpm无法扩展"有关可伸缩性的有趣(和良好)讨论.

请不要以为我是jBPM抨击; 我今天正在用它构建一个项目,这是一个非常多的"免费"和令人印象深刻的功能.祝好运.HTH