`
sonic_yj
  • 浏览: 76219 次
  • 性别: Icon_minigender_1
  • 来自: CD
社区版块
存档分类
最新评论

jbpm实现我参与的工作的一个效率办法,自己改还是将就用,这是一个问题

    博客分类:
  • JBPM
阅读更多

     我的第一个java项目做的7788了,jsf,jbpm的应用虽然有点折腾,总算还是成功搞定,用户也满意了。下一步jrule引进很有信心了。总的感觉jbpm引擎确实还不错,只是过于零散,有太多要自己做的事情,对象设计不算太合理(跟ibm的东西比)。我参与的工作这个事情就把我折腾了半天,最后想了一个折中办法,不过我觉得也许还是自己改改jbpm TaskInstance对象最快。

 我参与的工作: 我处理过的,当前没有完成的,该其他人处理的工作。 processinstance,taskinstance对象没有activityower这个属性,我开始就压变量,通过变量来告知本processinstance的当前taskinstance的之前处理人(用processlog更恼火,放弃了),这样就很痛苦了,要找一个现存工作,需要遍历processdefinition下进行中processinstance,再遍历进行中taskinstance,再查变量,然后从一个清单中查找。。。。效率低到爆。 想想也许bpm不关心用户处理把,这块几乎得自己写。。。   后来,干脆写taskinstance的describe,用这个来搞定效率问题,不过感觉这个不是最好的办法。因为还有pooledactor这种连接,都让我感觉有点慢。。 自己改倒是简单了,但是jbpm下面代码太多,又没什么注解,看到就不想改,不爽ing。。。

分享到:
评论
2 楼 sonic_yj 2007-02-09  
我参与过,未完成流程的工作。这个jbpm没有提供专门的方法,如果用没有完成的ProcessInstance结合ProcessLog查效率太低,压变量也比较慢

其他人的工作反而很好查,直接用getUserTask就搞定了

至于完成了的工作,我没有使用end了的processinstance来查,而是自己hib了一套表来存,这样比较方便使用hib分页以及写hql过滤,额外的好处是可以删除完成了的工作,让存量始终保持在一个低水平上
1 楼 lovevirus 2007-02-09  
我参与的工作: 我处理过的,当前没有完成的,该其他人处理的工作。说说各个实现....

相关推荐

Global site tag (gtag.js) - Google Analytics