`
nychen2000
  • 浏览: 79757 次
  • 性别: Icon_minigender_1
  • 来自: ...
社区版块
存档分类
最新评论

Fire workflow的IOC容器 vs Jbpm4的IOC容器

阅读更多
    前几天看到ronghao网友写了一篇帖子“Jbpm4的IOC容器http://www.iteye.com/topic/381607”,正好这几天在写Fire workflow1.0的文档,写到IOC容器这一章节。于是心血来潮,拿出来PK一下。

   其实,Fire workflow根本没有IOC容器!

   我没有忽悠大家,Fire workflow真的没有IOC容器。那么怎么和Jbpm4的IOC容器PK呢?
  
   Fire workflow可以将任何第三方IOC容器当作自己的容器,缺省使用Spring

   容器的作用是为引擎创建Bean的实例,充分利用第三方容器可以使得引擎和业务代码集成得更加优雅。
  
   在Fire workflow 1.0中,定义了一个新的服务,叫做Bean Factory Service。该Service的接口如下图。
  

   1.0中,bean factory的缺省实现是org.fireflow.engine.beanfactory.SpringBeanFactory,以Spring ioc容器作为BeanFactory,如下图

  


    下面,以与用户管理系统的集成为例,说明bean factory的优点。假设某Task的AssignmentHandler设置如下图。



    工作流Engine需要通过bean factory服务获得上图中的org.fireflow.example.workflowextension. RoleBasedAssignmentHandler的实例。在使用SpringBeanFactory的情况下,该bean的配置如下图。从图中可以看出,RoleBasedAssignmentHandler可以很方便的引用到业务系统的UserDAO实例。业务代码和工作流引擎优雅地集成在一起了!




  
  • 大小: 5.4 KB
  • 大小: 9.2 KB
  • 大小: 13.5 KB
  • 大小: 10.2 KB
分享到:
评论
1 楼 ronghao 2009-05-17  
你这是全权委派,自己只是做了个接口:)确实也没必要自己实现一个。

相关推荐

Global site tag (gtag.js) - Google Analytics