转载

JBPM 7.17 学习笔记(12)编译 Kie Server 和 Business Central

相关概念

Kie Server

Kie Server 是一个 Java web APP,允许你通过 REST/JMS 接口浏览规则和流程,并远程执行它们。 Kie Server 和 Workbench 的区别在于,Kie Server 主要负责远程执行规则和业务流程,它提供了用于查询、响应 http 请求的 JSON/REST 和 a XML/SOAP 接口。而 Workbench 则是完整的创建工具,包括流程的执行功能和远程 API。

Business Central

Kie server 和 businees central 的区别:Kie-server 只提供了规则和流程的执行环境,它不能创建规则和流程。Business central 支持对规则和流程的执行和创建。

Workbench 和 business central 的区别:二者其实是同一个东西,从 2018 年 11 月,Workbench 改名为 business central。曾经 workbench 有两个发行版本:KIE Drools Workbench 和 KIE Workbench,二者的不同仅在于后者内置了 jBPM 引擎。但是随着 Kie server 的发布,这个内置的 jBPM 引擎已经从 KIE Workbench 中移除了。这样 Workbench 的两个发行的版本就统一了,并重新命名为 Business central。

Kie Server 和 Business Central(Workbench)是两个独立的 java web 应用,它们可以部署到各自的服务器上,也可以部署在同一台服务器( http://blog.athico.com/2015/10/installing-kie-server-and-workbench-on.html)。

Kie Server Extension

一种 Kie Server 的功能插件。Kie Server 默认内置了两个 kie server 扩展: BRM 和 BPM。

Kie Container

Kie Container(kie容器)是 kjar 内存实例,允许对 kjar 的资源(域模型、流程、规则等)进行初始化和调用。Kie Server 通过 REST/JMS 协议来暴露 Kie 容器。

Controller

控制器、主服务器,提供一系列 REST 端点,负责对 Kie 服务器实例进行管理。例如这些端点:

  • 响应连接请求
  • 根据不同 Kie 服务器 ID 来同步所有注册过的容器
  • 响应断开请求

Kie Server state

指定 Kie Server 实例的当前状态。它是本地存储的(默认的文件),保存了以下信息:

  • 已注册的控制器的列表
  • 已知容器的列表
  • kie 服务器配置

服务器状态在收到某些事件时被持久化,这些事件包括:Kie 容器的创建、Kie 容器的销毁、控制器收到了 Kie 服务器实例的注册等。

Kie Server ID

一个在配置中设置的 Id。在启动时,每个 Kie 服务器实例都会被分配一个 ID,这个 ID 和主服务器上的某个配置相匹配。Kie 服务器实例会下载和使用这个配置来启动自身。

注意,主服务器(controller)类似于 Widlfly/JBoss EAP 的主域模式,但在这里,我们会用 unmanaged (非托管)模式运行服务器。

Kie Server 的编译和部署

  1. 下载 7.18.0.Final

  2. 解压缩,进入 droolsjbpm-integration-7.18.0.Final 目录,运行:

    mvn clean package -DskipTests
  3. 等待编译完成,进入 droolsjbpm-integration-7.18.0.Final/kie-server-parent/kie-server-wars/kie-server/target 目录。你会发现几个 war 包:

    JBPM 7.17 学习笔记(12)编译 Kie Server 和 Business Central
  4. 如果 jbpm server 正在运行,停止 jbpm server。将 kie-server-7.18.0.Final-ee7.war 拷贝到 jbpm-server-7.18.0.Final-dist/standalone/deployments 目录下。

    可以将这个目录下原来的 kie-server.war 和 kie-server.war.deployed 删除。然后将 kie-server-7.18.0.Final-ee7.war 改名为 kie-server.war

  5. 启动 jbpm server,命令: ./bin/standalone.sh

  6. 用 wbadmin/wbadmin 登录业务中心。

    添加用户命令:

    ./bin/add-user.sh -a -u kieserver -p password1! -g admin,kie-server

Business Central 的编译和部署

  1. 停止 jbpm server。

    也可以不停止 jbpm server。wildfly 支持热部署,它会自动监听 standalone/deployments 目录,如果你删除一个 war 包,这个应用会自动从服务器上卸载,如果你拷贝一个 war 包到这个目录,它会自动发布这个应用。

    我们停止 jbpm server 的原因是想因为 wildfly 的热部署会自动产生一些特殊后缀的文件(比如 .isDeploying/.failed/.deployed 等)。我们不想看到这些文件,因此手动停止 jbpm server。

  2. 进入 jbpm-server-7.18.0.Final-dist/standalone/deployments 目录,删除 business-central.war 和 business-central.war.deployed。

  3. 启动 jbpm server,命令: ./bin/standalone.sh

  4. 访问业务中心的首页: http://localhost:8080/business-central 和业务中心 REST 接口: http://localhost:8080/business-central/docs/ ,发现报 404 错误,因为业务中心已经被卸载了。但这不会影响 Kie Server 的运行,你仍然可以用这个地址访问 Kie Server 的 REST API: http://localhost:8080/kie-server/docs

    Kie Server 和 Business Central 分别拥有各自的 REST API,二者的端点地址不一样。

    Kie Server 的 REST API 的 Base URL 是: http://localhost:8080/kie-server/services/rest

    Business Central 的 REST API 的 Base URL 是: http://localhost:8080/business-central/rest/

  5. 业务中心的源代码在这里: https://github.com/kiegroup/kie-wb-distributions

  6. 将代码拉到某个目录,比如 kie-wb-distributions ,进入该目录,运行 mvn clean install -DskipTests 进行编译。

  7. 编译成功后,可以在 kie-wb-distributions/business-central-parent/business-central-distribution-wars/business-central/target 目录下找到两个 war 文件:

    JBPM 7.17 学习笔记(12)编译 Kie Server 和 Business Central

    其中,eap7.war 是 JBoss EAP 的版本,wildfly14.war 是 wildfly 版本。

  8. 将 business-central-7.20.0-SNAPSHOT-wildfly14.war 拷贝到 jbpm server 的 standalone/deployments 目录,并改名为 business-central.war。

  9. 启动 jbpm server。再次登录业务中心。

原文  https://blog.csdn.net/kmyhy/article/details/90171055
正文到此结束
Loading...