zoukankan      html  css  js  c++  java
  • 简单介绍jBPM与SSH的完整实例

    简单介绍jBPM与SSH的完整实例,如果是其它版本的框架也很容易做程序的迁移。

    流程的定义

    流程的定义建议使用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为描述流程定义文件,本例为:

    1. <?xml version="1.0" encoding="UTF-8"?>   
    2. <process-definition name="文档测试流程">   
    3.    <start-state name="开始">       <transition name="提交张三审批" to="张三审批"></transition>   
    4.    </start-state>   
    5.    <task-node name="张三审批">   
    6.       <task name="审批1">   
    7.          <assignment actor-id="张三"/>   
    8.       </task>   
    9.       <transition name="提交李四审批" to="李四审批"></transition>   
    10.    </task-node>   
    11.    <task-node name="李四审批">   
    12.       <task name="审批2">   
    13.          <assignment actor-id="李四"/>   
    14.       </task>   
    15.       <transition name="提交王五审批" to="王五审批"></transition>   
    16.    </task-node>   
    17.    <task-node name="王五审批">   
    18.       <task name="审批3">   
    19.          <assignment actor-id="王五"/>   
    20.       </task>   
    21.       <transition name="结束流程" to="结束"></transition>   
    22.    </task-node>   
    23.    <end-state name="结束"></end-state>   
    24. </process-definition>  

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

    本例中的gpd.xml文件

    1. <?xml version="1.0" encoding="UTF-8"?>   
    2. <process-diagram name="文档测试流程" width="801" height="477">   
    3.   <node name="开始" x="308" y="4" width="140" height="40">   
    4.    <transition name="提交张三审批">   
    5.       <label x="5" y="-10"/>   
    6.     </transition>   
    7.   </node>   
    8.   <node name="张三审批" x="310" y="90" width="140" height="40">   
    9.     <transition name="提交李四审批">   
    10.       <label x="5" y="-10"/>   
    11.     </transition>   
    12.   </node>   
    13.   <node name="李四审批" x="313" y="192" width="140" height="40">   
    14.     <transition name="提交王五审批">   
    15.       <label x="5" y="-10"/>   
    16.     </transition>   
    17.   </node>   
    18.   <node name="王五审批" x="308" y="307" width="140" height="40">   
    19.     <transition name="结束流程">   
    20.       <label x="5" y="-10"/>   
    21.     </transition>   
    22.   </node>   
    23.   <node name="结束" x="307" y="401" width="140" height="40"/>   
    24. </process-diagram> 
  • 相关阅读:
    docker安装nginx
    docker安装tomcat&部署javaweb程序
    linux/work
    Go语言入门篇-gRPC基于golang & java简单实现
    Go语言入门篇-jwt(json web token)权限验证
    Go语言入门篇-JSON&http调用
    Go语言入门篇-基本流程控制
    Go语言入门篇-基本类型排序和 slice 排序
    Go语言入门篇-高级数据类型
    Go语言入门篇-基本数据类型
  • 原文地址:https://www.cnblogs.com/sunwei2012/p/1778684.html
Copyright © 2011-2022 走看看