kie-api_KIE-WB / JBPM控制台Ng –配置

kie-api

大家好,这是我上一篇文章中有关如何使用jBPM Console的后续文章 。 这篇文章的主要思想是描述为了在您自己的公司中使用jBPM Console NG而需要进行的一些最常见的配置。 但是在讨论技术细节之前,我们将介绍KIE Workbench(KIE-WB)与jBPM Console NG本身之间的区别。 两种应用程序都需要类似的配置,并且很好地了解何时选择一个或另一个。 我们将在伦敦的免费研讨会上讨论这些主题。

介绍

如果查看项目源代码和文档,您会注意到正在创建多个项目,以为Drools和jBPM提供一套完整的工具。 由于我们采用了模块化的方法来构建工具,因此您基本上可以根据需要在不同的发行版之间进行选择。 jBPM控制台NG可以视为仅与BPM相关的一组打包的分发。 KIE Workbench(KIE-WB)是完整的发行版,包含我们正在创建的所有组件,因此在其中可以找到所有的BPM和Rules模块。 如果将更多模块添加到平台,则KIE-WB将包含它们。

不久前,迈克尔·安斯蒂斯(Michael Anstis)在blog.athico.com上发布了一篇文章来解释这种过渡: http ://blog.athico.com/2013/06/goodbye-guvnor-hello-drools-workbench.html此博客文章针对的是Guvnor用户,以便他们能够理解Drools 5.5和Drools 6之间的过渡。因此,下一部分的目的是对jBPM用户进行相同的解释,试图将所有概念统一在一起。

项目分布

前面提到的博客解释了我们现在创建的大多数组件,但是下图在BPM方面添加了一些细节:

项目分布

项目分布

关于此图像的一些快速注释:

  • UberfireGuvnor都是框架,而不是发行版。
  • 我们保留Guvnor这个名称的原意是。 Guvnor是定义所有内部项目自动化和组织的框架。 Guvnor是一个内部框架,我们将使用它提供一个智能层来定义如何管理和维护项目及所有知识资产。
  • KIE-WB-Common本身不是发行版,但它可以是发行版,因为它包含所有发行版之间的所有共享位。
  • Drools Workbench仅包含与规则相关的创作工具,请注意,与Guvnor相同,它没有为规则提供运行时。 将来可能会添加,但在6.0中不会添加。
  • jBPM控制台NG取代了旧的jBPM GWT控制台
  • 名称之间的区别(Drools Workbench和jBPM Console NG)是由于jBPM Console NG确实提供了所有运行时机制来实际运行您的业务流程以及与之关联的所有资产。
  • 注意, jBPM控制台NG使用了某些Drools-WB模块,并且还与jBPM Designer和Form Modeller集成在一起。
  • KIE Workbench包含平台内的所有组件,还添加了远程服务以与流程进行交互。
  • 请注意,6.x中的远程服务仅用于BPM端,这意味着我们还可以为jBPM Console NG分发提供这些服务,它现在不是优先事项,但是如果有人认为这是一个优先事项,则可以这样做。好主意。
  • 您可以在github的droolsjbpm组织下找到所有这些项目: http : //github.com/droolsjbpm
  • 与jBPM Console NG相关的所有配置和博客也适用于KIE Workbench
  • jBPM 6.0安装程序将与KIE Workbench捆绑在一起,因此,我的大部分帖子将显示KIE-WB的屏幕截图,而不是jBPM Console NG。

配置与部署

如果查看Github中的源代码存储库,您会发现jBPM Console NG,Drools Workbench和Kie Workbench包含一个名为* -distribution-wars的项目。 这些项目负责生成要为不同的Servlet容器和应用程序服务器分发的应用程序。 目前,我们为Tomcat 7,JBoss AS 7和JBoss EAP 6.1提供了捆绑软件。 (如果您是开发人员,则还可以使用GWT托管模式运行这些应用程序,该模式将启动Jetty服务器并自动部署该应用程序,以便可以轻松地对其进行调试。)

在这里,我们将看到如何部署和配置应用程序使其在JBoss AS 7中运行。显然,如果jBPM Installer为您做到了,则您不需要这样做。 但是,总是很高兴知道幕后情况,以防万一您更喜欢手动安装应用程序。

在配置用于部署的应用程序时,需要考虑三点:

  1. 用户/角色/组
  2. 域特定(自定义)连接器
  3. JBoss AS 7配置文件

为了简单起见,我借用了Maciej配置的JBoss AS 7并部署了KIE Workbench最新快照,因此您可以下载它,我们可以从那里查看其配置。 你可以在这里下载:

用户/角色/组

默认情况下,KIE-Workbench使用JBoss AS配置的用户进行工作。 为了创建新用户,我们需要使用
./add-user.sh脚本位于/ bin /目录中。 使用此脚本,我们将创建业务流程所需的所有用户,因此,我们还将为他们分配组和角色。

添加新用户

添加新用户

如上图所示,使用./add-user.sh脚本,您可以为应用程序创建一个新用户(前两个选项:选项B和空域)。 请注意,您需要为用户名和密码使用不同的字符串。 现在,您可以使用角色admin创建用户这样它就可以访问该工具的所有屏幕,然后可以编写用户所属的组。 在这种情况下,用户salaboy具有角色:admin,并且他属于IT组。 有些限制词不能用作组名。 现在,避免使用“ analyst”,“ admin”,“ developer”作为组名。

域特定(自定义)任务/连接器

特定于域的连接器是将业务流程与公司内部或外部的外部服务集成的方式。 这些连接器被视为技术资产,因此需要由技术用户处理。 在大多数情况下,建议在应用程序运行时不要更改/修改连接器,因此,需要提供这些连接器,以便应用程序在运行时使用。

使用自定义连接器需要三件事:

  1. 提供WorkItemHandler接口的实现,该接口将在运行时执行。
  2. 将实现绑定到服务任务名称
  3. 在工具内创建WorkItem描述符

为了提供这三个配置点,您可以看一下jbpm-playground存储库中的Customer Relationship示例。

客户关系示例

客户关系示例

这里的主要思想是拥有一个包含workItems实现的单独项目,例如:

CreateCustomerWorkItemHandler ,您将需要使用maven编译该项目并将生成的jar文件安装在KIE-WB应用程序中。 为此,您只需将customer-services-workitems-1.0-SNAPSHOT.jar复制到kie-wb.war应用程序的WEB-INF / lib目录中。 在此示例中,workItemHandler实现与可在此处检查的公共Web服务进行交互,因此您将需要Internet连接才能尝试此示例。

还要注意,在客户关系项目内部,有一些特定于领域的任务的高层映射,可以在我们的客户关系项目-> WorkItemDefinitions.wid中使用 。 此配置基本上将在Process Designer面板中添加服务任务:

特定于域的服务任务

特定于域的服务任务

最后一步是将高级映射绑定到该环境的实现。 您可以通过将新条目添加到WEB-INF / classes / META-INF / CustomWorkItemHandlers.conf文件中来完成此操作,对于本示例,我们只需要添加以下条目:

..."CreateCustomer": new org.jbpm.customer.services.CreateCustomerWorkItemHandler(),"AddCustomerComment": new org.jbpm.customer.services.AddCustomerCommentsWorkItemHandler(),"ManagersReport": new org.jbpm.customer.services.ManagersReportWorkItemHandler(),...

关于JBoss AS 7配置文件的说明

为了运行KIE Workbench,您需要使用完整的JBoss AS7配置文件运行它,因此,如果您使用新的JBoss AS7安装它,请不要忘记使用./standalone.sh脚本时指向完整的项目。 :

./standalone.sh --server-config=standalone-full.xml

下载

您可以下载KIE-WB的预安装版本,在其中可以克隆包含示例的jbpm-playground存储库(“编写->管理”,然后使用jbpm-playground URL克隆存储库:https://github.com/droolsjbpm / jbpm-playground)。

  • 在这里从MEGA下载

这个预安装的版本包含已经为“客户关系”示例安装和配置的workItemHandlers,但是您显然可以进行一些更改,并在需要时进行升级。

它还创建了两个用户:

User/Password: jbpm/jbpm6 (Groups: IT, HR, Accounting, etc)
User/Password: salaboy/salaboy123 (Groups: IT)

请尝试一下,让我知道它是否适合您。

明天和星期四的Drools&jBPM Free Workshop有几个席位。 如果您打算提供帮助,请给我写一封电子邮件给salaboy(at)redhat(dot)com。 有关它的更多详细信息,请参见此处。

参考: KIE-WB / JBPM控制台Ng –来自Drools&jBPM博客的JCG合作伙伴 Geoffrey De Smet的配置 。

翻译自: https://www.javacodegeeks.com/2013/11/kie-wb-jbpm-console-ng-configurations.html

kie-api

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/346860.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【OFDM系列5】单输入单输出OFDM(SISO-OFDM)多径信道迫零(ZF)和最小均方误差(MMSE)均衡器原理和公式推导

OFDM单输入单输出(SISO)迫零(ZF)均衡器 在去除CP之后,第k个子载波上的信号的FFT给出如下 Y k = H k D k + W k ⋯ ( 1 ) Y_k=H_k D_k+W_k\cdots(1)

如何在Tomcat中设置JNDI数据库连接池-Spring教程示例

在Spring和Tomcat中设置JNDI数据库连接池非常容易。 Tomcat服务器文档提供了有关如何在Tomcat 5、6或7中设置连接池的足够信息。在这里,我们将结合使用Tomcat 7和Spring框架在Tomcat服务器中创建连接池并在Spring中使用JNDI代码访问它们。 在上一篇文章中&#xff0…

win10任务栏透明+变窄+免安装

透明设置 在HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Advanced中新建DWORD32位值TaskbarAcrylicOpacity,设置数值为0 重启资源管理器explorer.exe即可 变窄 下载7Taskbar软件7tt_setup.exe,直接解压,对于本…

java vm_Java VM –提防YoungGen空间

java vm正如您从我们以前的面向性能的文章中可能已经看到的那样,运行良好的JVM是实现最佳应用程序性能和稳定性的最重要目标之一。 这样的健康评估通常仅关注主要收集的频率(避免)或检测内存泄漏的存在。 年轻一代空间或短寿命物体的大小和足…

Java生产监控的阴暗面

自动化的工作流程是在敏捷环境中交付高质量产品的新金标准。 不幸的是,不断变化会带来不断的风险。 输入“可观察性”,这是一种度量,可以从系统的外部输出中推断出系统的内部状态。 知道应用程序如何在生产中运行的能力。 在本节中&#xff…

MATLAB库函数upfirdn(分数倍采样率变换)的C语言实现【姊妹篇2纯C语言实现】

upfirdn原理 yout = upfirdn(xin,h,p,q) upfirdn的功能在MATLAB官方帮助文档中说得很清楚 通过插零实现 p p p倍上采样对上采样之后的信号用给定的 h h h(通常为低通滤波器)进行滤波对滤波结果进行

adf4350配置_配置MySQL以进行ADF开发

adf4350配置大家好。 今天,我将向您展示如何为Oracle ADF开发配置MySQL数据库。 恕我直言,当您将ADF与其他数据库而不是Oracle DB一起使用时,您将无法使用Oracle ADF的全部功能,有时您会发现自己在寻找解决方法,以实现…

模拟调频信号FM解调的matlab和C语言实现【姊妹篇2纯C语言实现】

本文所需的FM已调信号、原始音频、包络检波法解调后的音频、差分相位法解调后的音频,可通过以下链接进行下载。其中,FM已调信号文件较大共有两百多兆,故截取其部分上传,若有需要完整信号的请留言! FM调制解调音频文件.rar 已调信号:采样率为 F s = 5 m H z Fs=5mHz Fs=

如何在Java中使用重复项查找整数数组中的K个缺失数字?

自从我讨论任何编码或算法面试问题以来已经有很长时间了,因此我想重新考虑一种最流行的基于数组的编码问题,即在给定数组中查找缺失的数字。 在进行编程工作面试之前,您可能已经听说过或看到过此问题,但是面试官通常会使用许多不同…

【自适应盲均衡12】判决引导(DD)+判决反馈(DFE)+双模式切换的盲均衡算法在双绞线基带通信中的应用MATLAB仿真(采用三电平PAM信号模型)

引言 为克服数字基带信号在通过非屏蔽五类双绞线时产生的严重码间干扰( ISI) ,常采用自适应均衡技术来减小码间干扰,大大降低接收端信号的误码率。最小均方误差( LMS) 算法能有效降低码间干扰,但需要训练序列,因此影响传输效率。基于判决引导的最小均方误差( DDLMS) 算法不…

基于同步压缩小波变换(Synchrosqueezed wavelet transforms)的时频分析的MATLAB实现(不使用内置函数wsst)

引言 同步压缩小波变换(Synchrosqueezed wavelet transforms, SST)采用了经验模态分解的设计思路,结合小波变换和reallocation theory构建而成,有明确的数学定义和推导。 EMD算法是一种旨在将它们分解成构建块函数的技术,这些构建块函数是(合理地)少量分量的叠加,这些分量…

垃圾收集算法,垃圾收集器_您正在使用什么垃圾收集器?

垃圾收集算法,垃圾收集器我们的研究实验室正全速前进。 随着最近的资本注入 ,我们只能保证我们不断创新的步伐只会加快。 我们进行的部分研究与GC优化有关。 在处理这个有趣的领域中的问题时,我们认为可以分享一些有关GC算法使用的见解。 为此&#xff…

与时俱进:在JAX-RS API中采用OpenAPI v3.0.0

看到时间流逝真是太恐怖了! OpenAPI规范3.0.0是对Swagger规范的重大修改,大部分已于一年前发布,但是工具赶上了一段时间。 但是,随着Swagger Core 2.0.0的最新正式发布,事情肯定会加速。 为了证明这一点,著…

Cpp类虚成员函数指针的用法

普通类成员函数指针 先定义一个公鸡类Cock,只有一个函数Shout,功能是输出一个字符串。 接着定义函数指针类型PFN_Shout。 main函数中代码PFN_Shout pfn_Shout &Cock::Shout;和void (Cock:: * pfn_Shout)() &Cock::Shout;的功能相同&#xf…

通过引入switch表达式来增强Java switch语句

去年12月下旬,我发布了“ Switch Expressions Coming Java? 从那时起,进行了广泛的讨论,表达了意见分歧,现在就Java的switch表达式的未来达成了共识。 我曾尝试在12月的博客文章中评论与switch表达式有关的一些主要发展…

jclouds_jclouds的命令行界面

jclouds序幕 我使用和为jclouds贡献了一年多的时间。 到目前为止,我已经在很多领域广泛使用了它,尤其是在Fuse生态系统中 。 它的强大之处在于它缺少一件事,该工具可用于管理jclouds也提供访问权限的任何云提供商。 类似于EC2命令之类的工具&…

用于从文件读取/写入字符串的新JDK 11文件方法

我之前的文章主要关注可能会添加到JDK 11中的Files.isSameContent()方法。 JDK-8201276 [“(fs)向文件添加方法以从文件读取字符串或向文件写入字符串”]提到了此新方法,并重点介绍了本文的主题: readString(Path) readString(P…

【数字信号处理】离散傅里叶级数(DFS)

周期信号的DFS 周期信号一定 不存在 离散傅里叶变换,通过引入冲激序列,可以进行表示,使得数学运算更加严谨;但一定存在傅里叶级数! 时域周期==>频域离散 时域离散==>频域周期 时域又离散又周期==>频域又周期又离散 联系序列的傅里叶变换DFT理解即可,只不过复指…

java对响应数据做封装_1000种对Java的响应没有死

java对响应数据做封装当一篇评论发表1000条评论时,值得考虑一下。 上周我的社论“ 如果Java即将死,它肯定看起来非常健康 ”在各个开发人员社区中都感到不安 。 在Reddit,Hacker News和Slashdot之间,它收到了1000多个评论。 奇怪…

了解自定义对象创建:JSON绑定概述系列

让我们看一下JSON绑定如何处理自定义对象的创建。 本系列的下一篇文章将介绍如何使用适配器自定义JSON-B。 JSON-B期望所有类都具有一个公共的无参数构造函数 ,该构造函数在反序列化过程中用于实例化目标类。 创建实例后,可通过调用适当的setter方法或…