论坛首页 入门技术论坛

jbpm与ssh完整示例(一)

浏览 6429 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (1) :: 隐藏帖 (0)
作者 正文
   发表时间:2009-01-10  
说明
Jbpm的开发流程可以按如下几步进行:流程的定义、流程的发布、流程实例的启动、流程节点的流转、查看流程节点图片。本示例是在spring2.0、hibernate3.2、struts1.2下开发。

如果是其它版本的框架也很容易做程序的迁移。



流程的定义


流程的定义建议使用jbpm提供的eclipse下的插件,图形化配置插件安装文件可以到jbpm-starters-kit-3.1.4\jbpm-designer\jbpm-gpd-feature\eclipse下找到,需注意版本。使用这种方式可以把定义的流程描述的三个文件压缩成zip包,统一的部署到数据库中,方便b/s系统中显示图片当前节点信息。

1插件安装

把jbpm-gpd-feature文件夹复制到C:\Program Files\MyEclipse-6.0M1\eclipse\plugins下,注意自己的ecplise路径。

在C:\Program Files\MyEclipse-6.0M1\eclipse\links文件夹下建立jbpm-gpd.link文件。内容如下:path=C:\\Program Files\\MyEclipse-6.0M1\\eclipse\\plugins\\jbpm-gpd-feature。

这样再重新启动eclipse就可以使用流程定义功能了。

2流程的定义

在eclipse环境中选择file->new->other下的jboss jbpm->process definition流程定义。要在自己的项目文件中先指定文件要创建的文件夹。

这样会产生三个文件:gpd.xml、processdefinition.xml、processimage.jpg。

processdefinition.xml为描述流程定义文件,本例为:

<?xml version="1.0" encoding="UTF-8"?>

<process-definition name="文档测试流程">

   <start-state name="开始">

      <transition name="提交张三审批" to="张三审批"></transition>

   </start-state>

   <task-node name="张三审批">

      <task name="审批1">

         <assignment actor-id="张三"/>

      </task>

      <transition name="提交李四审批" to="李四审批"></transition>

   </task-node>

   <task-node name="李四审批">

      <task name="审批2">

         <assignment actor-id="李四"/>

      </task>

      <transition name="提交王五审批" to="王五审批"></transition>

   </task-node>

   <task-node name="王五审批">

      <task name="审批3">

         <assignment actor-id="王五"/>

      </task>

      <transition name="结束流程" to="结束"></transition>

   </task-node>

   <end-state name="结束"></end-state>

</process-definition>



processimage.jpg文件是定义流程产生的图片、gpd.xml文件是图形文件的座标说明。用于在b/s下显示流程流转的图片位置。

本例中的gpd.xml文件

<?xml version="1.0" encoding="UTF-8"?>



<process-diagram name="文档测试流程" width="801" height="477">

  <node name="开始" x="308" y="4" width="140" height="40">

    <transition name="提交张三审批">

      <label x="5" y="-10"/>

    </transition>

  </node>

  <node name="张三审批" x="310" y="90" width="140" height="40">

    <transition name="提交李四审批">

      <label x="5" y="-10"/>

    </transition>

  </node>

  <node name="李四审批" x="313" y="192" width="140" height="40">

    <transition name="提交王五审批">

      <label x="5" y="-10"/>

    </transition>

  </node>

  <node name="王五审批" x="308" y="307" width="140" height="40">

    <transition name="结束流程">

      <label x="5" y="-10"/>

    </transition>

  </node>

  <node name="结束" x="307" y="401" width="140" height="40"/>

</process-diagram>

   发表时间:2009-03-02  
正在学习JBPM 借鉴了^_^
0 请登录后投票
   发表时间:2009-05-22  
局外人,不知lz所云。不见有什么ssh+jbpm....
0 请登录后投票
   发表时间:2009-06-15  
请问,在jbpm工程环境下,我可以对工作流进行定义,发布,可就是无法和SSH整合起来。做了一个上传,但是只要加JBPM的包,就报错不知道为什么?
0 请登录后投票
   发表时间:2009-08-21  
别人腰里揣只死耗子,冒充打猎的。在这里死耗子都没有一只
0 请登录后投票
论坛首页 入门技术版

跳转论坛:
Global site tag (gtag.js) - Google Analytics