jBPM4任务管理:参与模式一瞥

8 回复 [最后一篇]
snowfox
snowfox 的头像
User offline. Last seen 1 周 2 天 ago. Offline
注册时间: 03/27/2009
积分: 483

原文地址:http://www.jboss.org/feeds/post/jbpm_task_management_a_look_at_the_participation_model

jBPM 任务管理:参与模式一瞥
Posted on 2009-03-30 09:41:00.0 by Heiko Braun
Since 4.0.0 Beta1
重新回顾jBPM中的任务管理模型,引进了一个新的概念:任务参与。参与模型描述了identies(用户或组)和任务在实际完成中的参与类型:
 
示例1:用户和业务管理员参与
在此与这个模型非常适合的一个通常的案例是在一个实际执行任务的用户和一个业务管理员监控进展情况之间的区别。依赖于参与类型,某些规则将实际起作用,而其它的将确保任务在给定的约束内被执行(例如,优先级,预定日期等)。

示例2:具有不同的参与类型的任务利益相关者
另一个例子可能是利益相关者监控任务的实际输出,或者是在一个任务上互相协作的不同参与者之间的委托。在这个案例中,一个任务的发起人,一个候选人执行这个工作并且最终的与受者可能是不同的参与类型。

The TaskService API已经反映了那些变化:

 

  1. org.jbpm.TaskService {
  2.  
  3. [...]
  4.  
  5. /**
  6.   * retrieves a list of tasks for a user
  7.   * and a particular {@link org.jbpm.task.Participation} type
  8.   *
  9.   * @see org.jbpm.TaskQuery
  10.   */
  11.  
  12. List findTasksByParticipation(String participation, UserRef user);
  13.  
  14. /**
  15.   * retrieves a list of tasks for a group
  16.   * and a particular {@link org.jbpm.task.Participation} type
  17.   *
  18.   * @see org.jbpm.TaskQuery
  19.   */
  20.  
  21. List findTasksByParticipation(String participation, GroupRef... groups);
  22.  
  23. }

目前,我们封装了一些默认的参与类型,其中仅仅支持“候选人”模型,但是你可以期待这些将在不久的将来被扩展实现。

 

 

  1. org.jbpm.task.Participation{
  2. [...]
  3. String CANDIDATE = "candidate";
  4. IdentityRef getIdentityRef();
  5. /** see constants for default participations */
  6. String getType();
  7. }

敬请期待。

 

springhill
springhill 的头像
User offline. Last seen 36 周 6 天 ago. Offline
注册时间: 03/28/2009
积分: 0

原文链接最好能直接点击访问,现在这种方式不方便,挑个小意见:)

www.jboss.org/feeds/post/jbpm_task_management_a_look_at_the_participation_model

snowfox
snowfox 的头像
User offline. Last seen 1 周 2 天 ago. Offline
注册时间: 03/27/2009
积分: 483

呵呵,提的不错,已经修改

liu400liu
liu400liu 的头像
User offline. Last seen 1 年 8 周 ago. Offline
注册时间: 05/07/2009
积分: 15

我现在也在研究jbpm4.0,不知道4中回到上一步怎么实现,大部分的功能我的实现了。

admin
admin 的头像
User offline. Last seen 12 周 3 天 ago. Offline
注册时间: 03/25/2009
积分: 56

[quote=liu400liu]

我现在也在研究jbpm4.0,不知道4中回到上一步怎么实现,大部分的功能我的实现了。

[/quote]

4.0我们正在做设计器和控制台,模式功能的扩展还没有做,不过你可以创建新的TaskInstance来实现回退,然后同时通过Event机制,实现业务逻辑的补偿

liu400liu
liu400liu 的头像
User offline. Last seen 1 年 8 周 ago. Offline
注册时间: 05/07/2009
积分: 15

我也这么想了,可是想new 个transition时,发现没有相关的api,很郁闷!

muqingren
muqingren 的头像
User offline. Last seen 1 年 4 周 ago. Offline
注册时间: 06/21/2009
积分: 1

强,学习了,感觉和3一点都不一样了

rogerofyan
rogerofyan 的头像
User offline. Last seen 1 年 2 周 ago. Offline
注册时间: 07/06/2009
积分: 11

在新发布的jBPM4 CR1中,findTasksByParticipation()方法被改成了两个不同名的方法了,

List<Task> findPersonalTasks(String userId);
List<Task> findGroupTasks(String userId);

我觉得新方法名更加易于理解。

codelife
codelife 的头像
User offline. Last seen 26 周 2 天 ago. Offline
注册时间: 08/19/2009
积分: -1

这样应该可以吧

ActivityImpl activity= ((ExecutionImpl)execution).getTransition().getDestination();
   TransitionImpl transition=activity.createOutgoingTransition();
   activity.addOutgoingTransition(transition);

评论查看选项

选择您喜欢的显示评论的模式,并点击“保存设置”来保存您所做的改变。