在Tempo内部有个TMS组件,全称是Task Management Service。看这个名称就知道,是管理Task的存储和状态的。
TMS的结构比较简单,基本的对外接口就是TMSRequestProcessor类,这个类会以webservice的方式发布出来,默认service endpoint是/axis2/services/TaskManagementServices,其负责接受请求的xml信息和soap action。
TMSRequestProcessor从xml信息中解析出关键信息,并将这些信息移交给TMSServer对象处理,TMSServer来内部通过TaskDaoConnection对象来与存储层交互。如下图所示:
在从svn上更新下来的tms-service工程中,有相应的teatcase类TMSRequestProcessorTest,可以执行一下看看效果。
有必要提一下的是,TMS所管理的task对象,并不是唯一与user绑定的。这个不同于WfMC的workitem概念。TMs每个task都可能会有很多的user owners和role owners。
这样的处理模式比较简单,但不太适合国内的流程应用模式。特别对于某一个任务会存在多个人同时处理的情况。
查看本文来源