小白学流程引擎-FLowable(三) —流程设计器Flowable UI

版本环境:Springboot集成Flowable-UI 6.7.2

一、如何绘制BPMN文件

上文讲到了通过流程定义BPMN文件即可让流程流转起来,并执行来几个核心的功能测试。但是那个看起来复杂的BPMN.xml文件的内容手敲起来有点困难,那么实际真实的场景是什么,或者是怎么完成流程图BPMN文件的绘制呢?

绝大多数情况,比如公司流程引擎系统,前端会用基于绘制BPM开源框架进行二次封装,在结合流程引擎后台服务组成一套公司内的流程引擎系统。

而Flowable官方给我们提供了一套可视化操作的web系统,方便文明学习和深入了解Flowable项目。

二、Flwable UI是什么

Flowable UI是官方提供的几个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进行认证,因此应用需要运行在相同的域名下。

三、下载与安装

方案一:下载原生Flowable UI包

1,下载并安装最新稳定版本的Apache Tomcat。
Tomcat官网:https://tomcat.apache.org
本文下载的是Tomcat9.

2,下载最新稳定版本的Flowable 6。
Flowable官网:https://www.flowable.com/open-source
Flowable的githup地址:https://github.com/flowable/flowable-engine/releases
其实,从官网进去下载也是跳转到githup。
本文下载的是flowable-6.7.2,即下载flowable-6.7.2.zip

3,将Flowable发行包中,wars文件夹下的flowable-ui.war、flowable-rest.war文件,复制到Tomcat的webapps文件夹下。(Flowable不同版本war包可能不同)
小白学流程引擎-FLowable(三) —流程设计器Flowable UI_第1张图片
小白学流程引擎-FLowable(三) —流程设计器Flowable UI_第2张图片

4,运行Flowable-UI

方法一:运行Tomcat下的bin/startup.sh(在Mac OS或Linux下),或bin/startup.bat(在Windows下)脚本,启动Tomcat服务器。

cd /Users/xiong/Downloads/install/apache-tomcat-9.0.69
cd bin
sudo ./startup.sh

然后输入密码,看到提示Tomcat started.则tomcat启动成功,

方法二:直接使用java -jar flowable-ui.war命令启动即可

cd /Users/xiong/Downloads/install/flowable-6.7.2/wars
java -jar flowable-ui.war 

然后出现类似Started FlowableUiApplication in 71.135 seconds (JVM running for 72.303)的字样,则flowable启动成功。

5,打开web浏览器,访问http://127.0.0.1:8080/flowable-ui/#/,账号密码admin/test

ps:以上路径注意是用你自己Flowable的安装包路径。

方案二:基于原始Flowable包的Gitee开源仓库

鉴于方案一步骤繁多,并且访问githup并下载Flowable包,有时候速度相当慢,甚至访问不了页面,这时候快速安装的FLowable UI仓库给你准备好了。

步骤:

  1. git clone https://gitee.com/xiongbomy/spider-flowable-ui.git 到本地(或者访问页面https://gitee.com/xiongbomy/spider-flowable-ui)
  2. 运行FlowableUiApplication类,即启动服务
  3. 启动成功后,访问localhost:9001/flowable-ui/,即Flowable UI可视化管理系统
  4. 默认账号密码admin/test,即可登录进去

是不是很简单方便,开箱即用,运行即可访问。

这样所有的Flowable UI应用都将默认运行在H2内存数据库下,并且可以在浏览器中看到如下登录界面:
小白学流程引擎-FLowable(三) —流程设计器Flowable UI_第3张图片

登录成功后,首页便有四个模块的内容,分别是Flowable-IDM,Flowable-Modeler,Flowable-Task,Flowable-Admin,对应中文名称就是身份管理应用程序,建模器应用程序,任务应用程序,管理员应用程序
小白学流程引擎-FLowable(三) —流程设计器Flowable UI_第4张图片

四、解惑

1,看网上很多教程博客,Flowable UI是有四个web应用,而此文wars只有两个war包,什么原因?

答:原来Flowable UI是四个独立的服务和页面,使用时需要浏览器来回切换页面,很费劲,好在,Flowable团队在Flowable6.6之后把FlowableUI中提供的四个功能合并到了一起。

2,本地没有安装H2数据库环境,为什么Flowable UI服务能够跑起来,并保存数据?

答:

H2数据库,内嵌模式,就是把在应用中引入H2,启动应用的同时,会把H2数据服务也启动,应用中既包含了H2数据库的服务端,同时应用又作为客户端来连接H2数据库。嵌入模式就是数据库文件存在于应用当前的硬盘内,进行了持久化,当应用进程关闭时数据库与数据表不会消失。

项目内嵌H2数据库,这样客户端只需要启动项目,而不需要本地安装数据库,就可以使用项目并且保存数据。这就是Flowable UI默认使用H2数据库的原因之一。

H2是一个开源的嵌入式数据库引擎,采用java语言编写,不受平台的限制,非常小巧和方便,因此采用H2作为开发期、测试期和演示的数据库非常方便,不太适合作为大规模生产数据库。

关于Flowable UI应用更详细的内容,请移步到下一篇文章,谢谢。

你可能感兴趣的:(Flowable,流程引擎)