目录

  • 流程设计器-Flowable UI
  • 安装文档
  • Tomcat运行Flowable UI
  • Flowable IDM 身份管理应用程序
  • 创建用户
  • 创建组
  • 权限控制
  • Flowable Modeler 建模器应用程序
  • 创建流程
  • 添加用户任务
  • 用户任务分配用户
  • 添加其它用户任务和结束事件
  • 保存流程
  • 导出bpmn20.xml文件
  • 部署流程
  • 启动流程实例
  • 完成任务
  • 历史任务查询
  • 应用程序演示
  • 发布应用程序
  • 启动流程
  • 登录user1完成任务
  • 登录user2完成任务-操作同上


流程设计器-Flowable UI

官方手册:https://tkjohn.github.io/flowable-userguide/#flowableUIAppsFlowable提供了几个web应用,用于演示及介绍Flowable项目提供的功能:

  • Flowable IDM: 身份管理应用。为所有Flowable UI应用提供单点登录认证功能,并且为拥有IDM管理员权限的用户提供了管理用户、组与权限的功能。
  • Flowable Modeler: 让具有建模权限的用户可以创建流程模型、表单、选择表与应用定义。
  • Flowable Task: 运行时任务应用。提供了启动流程实例、编辑任务表单、完成任务,以及查询流程实例与任务的功能。
  • Flowable Admin: 管理应用。让具有管理员权限的用户可以查询BPMN、DMN、Form及Content引擎,并提供了许多选项用于修改流程实例、任务、作业等。管理应用通过REST API连接至引擎,并与Flowable Task应用及Flowable REST应用一同部署。

所有其他的应用都需要Flowable IDM提供认证。每个应用的WAR文件可以部署在相同的servlet容器(如Apache Tomcat)中,也可以部署在不同的容器中。由于每个应用使用相同的cookie进行认证,因此应用需要运行在相同的域名下。
应用基于Spring Boot 2.0。也就是说WAR文件实际上可以作为独立应用直接运行。参见Spring Boot文档中的可执行的Jar章节。

安装文档

如前所述,全部四个UI应用可以部署在同一个Tomcat服务器里,并且作为入门,这大概也是最简单的方式。也可以选择只安装Modeler应用,但是必须也要部署、运行Flowable IDM应用。在这个安装指导中,我们会介绍如何将所有的四个应用安装至Tomcat服务。

  1. 下载最新稳定版本的Apache Tomcat
  2. 下载最新稳定版本的Flowable 6

flowable java 子流程创建 flowable自定义流程设计器_flowable java 子流程创建


flowable java 子流程创建 flowable自定义流程设计器_flowable java 子流程创建_02


flowable java 子流程创建 flowable自定义流程设计器_UI_03


:::info

注:这个版本war包已经合并为flowable-rest.war和flowable-ui.war

:::

  1. 将Flowable发行包中,_wars_文件夹下的flowable-admin.war、flowable-idm.war、flowable-modeler.war与flowable-task.war文件,复制到Tomcat的webapps文件夹下。
  2. 运行bin/startup.sh(在Mac OS或Linux下),或bin/startup.bat(在Windows下)脚本,启动Tomcat服务器。
  3. 打开web浏览器,访问http://localhost:8080/flowable-modeler。

这样所有的Flowable UI应用都将运行在H2内存数据库下,并且可以在浏览器中看到如下登录界面:

flowable java 子流程创建 flowable自定义流程设计器_flowable java 子流程创建_04


默认情况下,Flowable IDM应用将创建一个具有访问所有Flowable UI应用所需的权限的admin用户。使用admin/test登录,浏览器会跳转至Flowable Modeler应用:

flowable java 子流程创建 flowable自定义流程设计器_应用程序_05


作为可执行的Spring Boot应用,可以直接以独立应用模式运行UI,而不需要应用服务器。 可以像这样启动一个应用:

java -jar flowable-idm.war

通常会需要将默认的H2内存数据库配置,修改为MySQL或Postgres(或其他持久化数据库)。 可以修改每个应用_WEB-INF/classes/_文件夹下的application.properties。 也可以使用Spring Boot的显式配置Github上也提供了配置示例。 要将默认配置修改为MySQL,需要如下修改配置文件:

spring.datasource.driver-class-name=com.mysql.jdbc.Driver
spring.datasource.url=jdbc:mysql://127.0.0.1:3306/flowable?characterEncoding=UTF-8
spring.datasource.username=flowable
spring.datasource.password=flowable

这个配置需要MySQL服务器中有一个flowable数据库,UI应用会自动生成必要的数据库表。对于Postgres,需要做如下修改:

spring.datasource.driver-class-name=org.postgresql.Driver
spring.datasource.url=jdbc:postgresql://localhost:5432/flowable
spring.datasource.username=flowable
spring.datasource.password=flowable

除了修改配置,还需要确保在classpath中有对应的数据库驱动。类似的,可以对每个web应用分别操作,将驱动JAR文件添加到WEB-INF/lib目录下;也可以直接将JAR文件添加到Tomcat的lib目录下。MySQL与Postgres的数据库驱动可以从这里下载:

以独立应用方式运行应用时,可以使用 loader.path 参数添加数据库驱动。

java -Dloader.path=/location/to/your/driverfolder -jar flowable-idm.war

参阅Spring Boot文档PropertiesLauncher功能介绍了解更多信息。

Tomcat运行Flowable UI

下载地址:https://www.flowable.com/open-source

flowable java 子流程创建 flowable自定义流程设计器_UI_06


flowable java 子流程创建 flowable自定义流程设计器_UI_07


flowable java 子流程创建 flowable自定义流程设计器_spring_08


:::info

复制flowable的war包到tomcat的webapps目录下

:::

flowable java 子流程创建 flowable自定义流程设计器_spring_09


flowable java 子流程创建 flowable自定义流程设计器_应用程序_10


:::info

启动tomcat后,会自动解压缩war包

:::

flowable java 子流程创建 flowable自定义流程设计器_spring_11


:::info

http://localhost:8080/flowable-uiadmin/test

:::

flowable java 子流程创建 flowable自定义流程设计器_flowable java 子流程创建_12


flowable java 子流程创建 flowable自定义流程设计器_flowable java 子流程创建_13

Flowable IDM 身份管理应用程序

flowable java 子流程创建 flowable自定义流程设计器_UI_14

创建用户

flowable java 子流程创建 flowable自定义流程设计器_应用程序_15


flowable java 子流程创建 flowable自定义流程设计器_spring_16


flowable java 子流程创建 flowable自定义流程设计器_应用程序_17

创建组

flowable java 子流程创建 flowable自定义流程设计器_UI_18

权限控制

flowable java 子流程创建 flowable自定义流程设计器_flowable java 子流程创建_19


flowable java 子流程创建 flowable自定义流程设计器_spring_20


flowable java 子流程创建 flowable自定义流程设计器_UI_21

Flowable Modeler 建模器应用程序

flowable java 子流程创建 flowable自定义流程设计器_flowable java 子流程创建_22

创建流程

flowable java 子流程创建 flowable自定义流程设计器_应用程序_23


flowable java 子流程创建 flowable自定义流程设计器_spring_24


flowable java 子流程创建 flowable自定义流程设计器_flowable java 子流程创建_25

添加用户任务

flowable java 子流程创建 flowable自定义流程设计器_UI_26

用户任务分配用户

flowable java 子流程创建 flowable自定义流程设计器_UI_27


flowable java 子流程创建 flowable自定义流程设计器_spring_28


flowable java 子流程创建 flowable自定义流程设计器_spring_29


flowable java 子流程创建 flowable自定义流程设计器_spring_30

添加其它用户任务和结束事件

flowable java 子流程创建 flowable自定义流程设计器_flowable java 子流程创建_31

保存流程

flowable java 子流程创建 flowable自定义流程设计器_应用程序_32


flowable java 子流程创建 flowable自定义流程设计器_spring_33


flowable java 子流程创建 flowable自定义流程设计器_UI_34

导出bpmn20.xml文件

flowable java 子流程创建 flowable自定义流程设计器_spring_35


flowable java 子流程创建 flowable自定义流程设计器_UI_36


flowable java 子流程创建 flowable自定义流程设计器_UI_37

部署流程

:::info

复制bpmn20.xml文件到resources下

:::

flowable java 子流程创建 flowable自定义流程设计器_UI_38


flowable java 子流程创建 flowable自定义流程设计器_应用程序_39


flowable java 子流程创建 flowable自定义流程设计器_应用程序_40


flowable java 子流程创建 flowable自定义流程设计器_应用程序_41


flowable java 子流程创建 flowable自定义流程设计器_spring_42


flowable java 子流程创建 flowable自定义流程设计器_应用程序_43


flowable java 子流程创建 flowable自定义流程设计器_UI_44

启动流程实例

flowable java 子流程创建 flowable自定义流程设计器_spring_45


flowable java 子流程创建 flowable自定义流程设计器_flowable java 子流程创建_46


flowable java 子流程创建 flowable自定义流程设计器_flowable java 子流程创建_47


flowable java 子流程创建 flowable自定义流程设计器_spring_48

完成任务

flowable java 子流程创建 flowable自定义流程设计器_应用程序_49


flowable java 子流程创建 flowable自定义流程设计器_应用程序_50

历史任务查询

flowable java 子流程创建 flowable自定义流程设计器_UI_51


flowable java 子流程创建 flowable自定义流程设计器_UI_52

应用程序演示


发布应用程序

flowable java 子流程创建 flowable自定义流程设计器_flowable java 子流程创建_53


flowable java 子流程创建 flowable自定义流程设计器_spring_54


flowable java 子流程创建 flowable自定义流程设计器_flowable java 子流程创建_55


flowable java 子流程创建 flowable自定义流程设计器_应用程序_56


flowable java 子流程创建 flowable自定义流程设计器_应用程序_57


flowable java 子流程创建 flowable自定义流程设计器_应用程序_58


flowable java 子流程创建 flowable自定义流程设计器_应用程序_59


flowable java 子流程创建 flowable自定义流程设计器_flowable java 子流程创建_60


flowable java 子流程创建 flowable自定义流程设计器_UI_61

启动流程

flowable java 子流程创建 flowable自定义流程设计器_spring_62


flowable java 子流程创建 flowable自定义流程设计器_UI_63


flowable java 子流程创建 flowable自定义流程设计器_应用程序_64


flowable java 子流程创建 flowable自定义流程设计器_应用程序_65

登录user1完成任务

flowable java 子流程创建 flowable自定义流程设计器_flowable java 子流程创建_66


flowable java 子流程创建 flowable自定义流程设计器_flowable java 子流程创建_67


flowable java 子流程创建 flowable自定义流程设计器_spring_68


flowable java 子流程创建 flowable自定义流程设计器_应用程序_69

登录user2完成任务-操作同上