我的第一个java项目做的7788了,jsf,jbpm的应用虽然有点折腾,总算还是成功搞定,用户也满意了。下一步jrule引进很有信心了。总的感觉jbpm引擎确实还不错,只是过于零散,有太多要自己做的事情,对象设计不算太合理(跟ibm的东西比)。我参与的工作这个事情就把我折腾了半天,最后想了一个折中办法,不过我觉得也许还是自己改改jbpm TaskInstance对象最快。
我参与的工作: 我处理过的,当前没有完成的,该其他人处理的工作。 processinstance,taskinstance对象没有activityower这个属性,我开始就压变量,通过变量来告知本processinstance的当前taskinstance的之前处理人(用processlog更恼火,放弃了),这样就很痛苦了,要找一个现存工作,需要遍历processdefinition下进行中processinstance,再遍历进行中taskinstance,再查变量,然后从一个清单中查找。。。。效率低到爆。 想想也许bpm不关心用户处理把,这块几乎得自己写。。。 后来,干脆写taskinstance的describe,用这个来搞定效率问题,不过感觉这个不是最好的办法。因为还有pooledactor这种连接,都让我感觉有点慢。。 自己改倒是简单了,但是jbpm下面代码太多,又没什么注解,看到就不想改,不爽ing。。。