• 小白学流程引擎-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包可能不同)
    在这里插入图片描述
    在这里插入图片描述

    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
    
    • 1
    • 2
    • 3

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

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

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

    然后出现类似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-IDM,Flowable-Modeler,Flowable-Task,Flowable-Admin,对应中文名称就是身份管理应用程序,建模器应用程序,任务应用程序,管理员应用程序
    在这里插入图片描述

    四、解惑

    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应用更详细的内容,请移步到下一篇文章,谢谢。

  • 相关阅读:
    【杂谈】-蓝牙低功耗数据传输模式比较
    2022CSP-J初赛游记
    北京ib国际学校大盘点
    【无标题】
    工具推荐#简单图片转换为ASCII图(基于字符)
    合同法重点笔记经典版
    Golang | Leetcode Golang题解之第7题整数反转
    怪兽存活概率问题
    好久不见!OneFlow 1.0全新版本上线
    Stata17 MP/SE/BE(包含常用模型代码和熵值法计算代码)
  • 原文地址:https://blog.csdn.net/weixin_44143114/article/details/128138869