读书人

使用fork/join的常见异常

发布时间: 2012-11-06 14:07:00 作者: rapoo

使用fork/join的常见错误

在实际的流程设计中常常会出现如下的流程:

使用fork/join的常见异常

看上去没什么问题,那么开始编程

xml 代码
  1. <!---->xml?version="1.0"?encoding="UTF-8"?>??
  2. <process-definition?xmlns=""?name="yytest">??
  3. ???<start-state?name="start">??
  4. ??????<transition?name=""?to="f1">transition>??
  5. ???start-state>??
  6. ???<fork?name="f1">??
  7. ??????<transition?name="to_s1"?to="s1">transition>??
  8. ??????<transition?name="to_j1_1"?to="j1">transition>??
  9. ???fork>??
  10. ???<state?name="s1">??
  11. ??????<transition?name=""?to="f2">transition>??
  12. ???state>??
  13. ???<fork?name="f2">??
  14. ??????<transition?name="to_j2_1"?to="j2">transition>??
  15. ??????<transition?name="to_s2"?to="s2">transition>??
  16. ???fork>??
  17. ???<state?name="s2">??
  18. ??????<transition?name="to_j2_2"?to="j2">transition>??
  19. ???state>??? ??
  20. ???<join?name="j2">??
  21. ????????<transition?name="to_j1_2"?to="j1">transition>??
  22. ???join>??
  23. ???<join?name="j1">??
  24. ??????<transition?name=""?to="s3">transition>??
  25. ???join>??
  26. ???<state?name="s3">??
  27. ??????<transition?name=""?to="end">transition>??
  28. ???state>??
  29. ???<end-state?name="end">end-state>??
  30. ??? ??
  31. ??
  32. process-definition>??
java 代码
  1. private?static?void?run(){ ??
  2. ????????JbpmContext?jbpmContext?=?jbpmConfiguration.createJbpmContext(); ??
  3. ????????try?{ ??
  4. ????????????long?processInstanceId?=1; ??
  5. ???????????????processInstance?=?jbpmContext.loadProcessInstance(processInstanceId); ??
  6. ???????????????Token?root?=?processInstance.getRootToken(); ??
  7. ???????????????root.signal(); ??
  8. ???????????????Token?to_s1?=?root.getChild("to_s1"); ??
  9. ???????????????Token?to_j1_1?=?root.getChild("to_j1_1"); ??
  10. ???????????????System.out.println("root:"+root.getNode());//root:Fork(f1) ??
  11. ???????????????System.out.println("to_s1:"+to_s1.getNode());//to_s1:State(s1) ??
  12. ???????????????System.out.println("to_j1_1:"+to_j1_1.getNode());//to_j1_1:Join(j1) ??
  13. ???????????????to_s1.signal(); ??
  14. ???????????????Token?to_s2?=?to_s1.getChild("to_s2"); ??
  15. ???????????????Token?to_j2_1?=?to_s1.getChild("to_j2_1"); ??
  16. ???????????????System.out.println("root:"+root.getNode());//root:Fork(f1) ??
  17. ???????????????System.out.println("to_s2:"+to_s2.getNode());//to_s2:State(s2) ??
  18. ???????????????System.out.println("to_j2_1:"+to_j2_1.getNode());//to_j2_1:Join(j1) ??
  19. ???????????????to_s2.signal(); ??
  20. ???????????????System.out.println("root:"+root.getNode()); ??
  21. ???????????????//正确:root:State(s3) ??
  22. ????????????}finally?{ ??
  23. ??????????????jbpmContext.close(); ??
  24. ????????????} ??
  25. ??
  26. ????}?????
1 楼 抛出异常的爱 2006-12-05 D:/eclipse/jbpm/jbpm-starters-kit-3.1.2/jbpm-designer/workspace/yytestjbpm/processes/yytest/processimage.jpg

注意先上传之后再用网络URL引用图片 2 楼 jeffen2006 2006-12-05 如何上传呢?我点插入图片的按钮,弹出的对话框中没有上传的功能,我就copy的地址。

读书人网 >软件架构设计

热点推荐