日期:2014-05-19  浏览次数:20596 次

JBPM4.4 用户组问题,急急急!
下面是jpdl流程内容:
<start g="368,-8,48,48" name="开始">
  <transition g="6,-19" name="开始流程" to="企业用户填写申请材料"/>
  </start>
  <end g="371,1574,48,48" name="结束"/>
  <task form="xzxk/xzxkSQList.jsp" g="296,85,190,52" name="企业用户填写申请材料" candidate-groups="orgUsers">
  <transition to="许可机关审查"/>
  </task>
  <task candidate-groups="dev" g="323,161,137,48" name="许可机关审查">
  <transition g="4,-17" name="审查结果" to="受理结果"/>
  </task>

刚刚学习JPBM,请大家指教。
请问orgUsers和dev两个用户组要怎么赋值?是在启动的时候给所有的用户组赋值吗?


我试过下面这种方式:  
  /**
  * 启动流程
  * @return
  */
public String statrLC(){
  IdentityService identityService=processEngine.getIdentityService();
  identityService.createGroup("orgUsers");
  identityService.createUser("johndoe", "johndoe", "John", "Doe");
  identityService.createMembership("johndoe", "orgUsers");
  processEngine.getExecutionService().startProcessInstanceById(id);
  return "addLC";
}
  第一次可以启动成功,但是待办任务里面没有数据, 第二次就会报错,说orgUsers用户组已经存在。


  请大家看看,最好贴上代码,谢谢。


------解决方案--------------------
identityService.createGroup("orgUsers");
identityService.createUser("johndoe", "johndoe", "John", "Doe");
identityService.createMembership("johndoe", "orgUsers");
这个 如果存在 重复的会跑错。 你第一次运行,已经放到组里面了。。下次再添加就会出错。

建议 : 先把所有的用户、组初始化到 里面去。然后直接用就是了。。
没什么用吧?我觉得就是在发mail的时候才会用到