17.4. 将 DMN 模型 KJAR 迁移到红帽构建的 Kogito 微服务
迁移外部应用程序后,您需要将特定于 DMN 模型的 KJAR 迁移到红帽构建的 Kogito 微服务。
流程
为您的红帽构建的 Kogito 微服务创建一个 Maven 项目。
有关创建 Maven 项目的步骤,请参阅为红帽构建的 Kogito 微服务创建 Maven 项目。
Maven 项目创建 Kogito 工件。
-
将 KJAR 的
src/main/resources文件夹中的 DMN 模型复制到 Kogito 工件的src/main/resources文件夹。 将 KJAR 的
src/test/resources文件夹中的测试场景复制到 Kogito 工件的src/test/resources文件夹。重要您需要在项目的
pom.xml文件中导入红帽构建的 Kogito 依赖项,并使用 KIE Server REST API 创建 JUnit 激活器。如需更多信息,请参阅使用 测试场景测试决策服务。运行以下命令并确保测试场景在指定的非出口测试中运行。
mvn clean install
mvn clean installCopy to Clipboard Copied! Toggle word wrap Toggle overflow 运行红帽构建的 Kogito 应用程序后,您可以检索 Swagger 或 OAS 规格文件。Swagger 或 OAS 规格提供与 REST 端点相同的信息,以及以下实现详情:
- API 可用服务器的基本 URL
- 参考架构名称
当外部应用程序重新路由到新 URL 时,您可以使用提供的实现详情。
将 DMN 模型 KJAR 迁移到红帽构建的 Kogito 微服务后,您需要使用 Red Hat OpenShift Container Platform 部署微服务。有关使用 Openshift 的部署选项,请参阅使用 RHPAM Kogito Operator 的 OpenShift 部署选项。
17.4.1. 将 DMN 模型 KJAR 迁移到红帽构建的 Kogito 微服务的示例 复制链接链接已复制到粘贴板!
以下是将 DMN 模型 KJAR 迁移到红帽构建的 Kogito 微服务的示例:
图 17.1. 使用 DMN 模型实现的决策服务示例
图 17.2. 使用特定 ItemDefinition 结构的 DMN 模型示例
您需要在 Business Central 中开发的现有 KJAR 中将对象模型(POJO)定义为 DTO。
在 KJAR 中定义为 DTO 的对象模型示例
在上例中,定义的 DTO 与 KIE Server 客户端 Java API 一起使用。另外,当非 Java 外部应用程序与 KIE 服务器上部署的 KJAR 交互时,您可以在有效负载中指定 DTO。
使用 KIE Server 客户端 Java API 的示例
图 17.3. 在有效负载中手动指定 DTO 的示例
在上例中,REST API 中对象模型的 FQCN 用于通用 KIE Server marshalling。