尝试使用jBPM Console NG(测试版)

大家好! 这是关于jBPM Console NG的另一篇文章。 经过6个月的辛苦工作,我很高兴为开发者社区撰写这篇文章,以进行尝试。 在这篇文章中,我将解释如何从源代码构建应用程序。 这背后的主要思想是知道如何在测试过程中设置环境并修改应用程序。 您将基本学习为该项目做出贡献所需的全部知识。

介绍

jBPM Console NG旨在提供任务和流程
管理协作环境,以促进公司采用BPM套件。 下载源代码并编译该应用程序将使您可以尝试对该应用程序进行修改,以防您要扩展它或修复错误。 该应用程序受Apache License V2许可,因此可以根据此许可证使用和修改。

使用源代码

为了使一切正常运行的第一步是使用GIT获取源代码。 这是您需要在计算机上安装的东西才能继续:

  • JDK 6
  • Maven的3.x
  • 吉特
  • 安装了maven插件的任何IDE(Eclipse,IntelliJ,Netbeans)
  • JBoss应用服务器7.1.1(可选)

一旦安装了所有这些工具,我们就可以继续从github存储库获取源代码: https : //github.com/droolsjbpm/jbpm-console-ng/为了获得存储库的“克隆”,您可以使用必须从终端:

git clone https://github.com/droolsjbpm/jbpm-console-ng.git

完成后,您可以编译源代码,这里有两种选择:

  1. 为了开发目的,使用以下命令编译项目:
    mvn clean install
  2. 编译项目以生成JBoss和Tomcat的发行战+文档
    mvn clean install -PfullProfile

高枕无忧! 第一次执行此步骤时,Maven需要下载大量的库,因此您需要等待。

在托管模式下运行应用程序

编译完项目后,可以在GWT所谓的“托管模式”(也称为开发人员模式)中执行jbpm-console-ng-showcase。要在托管模式下启动应用程序,您应该执行以下操作:

  1. jBPM Console NG Showcase包含最终的应用程序分发代码:
    cd jbpm-console-ng-showcase/
  2. 使用GWT Maven插件以托管模式运行
    mvn gwt:run

这将启动Jetty + GWT开发模式屏幕,该屏幕将允许您复制托管应用程序的URL,以供您尝试:

GWT托管模式将URL( http://127.0.0.1:8888/org.jbpm.console.ng.jBPMShowcase/jBPM.html?gwt.codesvr=127.0.0.1:9997 )复制到浏览器中(对于托管模式,您需要要在浏览器中安装GWT插件,请放心,如果您没有安装GWT插件,它将自动安装)将打开该应用程序。 我强烈建议将Firefox用于开发模式或Chrome(通常速度较慢),因为在开发过程中,我们将编译范围限定在FF和Chrome(壁虎浏览器)上。

在JBoss AS 7中运行应用程序

现在,如果要在JBoss上部署应用程序,则需要转到第二个编译选项(-PfullProfile),这将花费一些额外的时间来为所有浏览器和所有语言(英语,西班牙语等)编译应用程序。 。 为了将应用程序作为7实例部署到jboss,您将需要移动在jbpm-console-ng / jbpm-console-ng-distribution-wars / target / jbpm-console-ng-jboss-as7内部生成的war文件将.war放入<jboss-as> / standalone / deployments目录,然后将war文件重命名为jbpm-console-ng.war。 应用程序的名称将用作应用程序的根上下文。 对于JBoss,您还需要为用户和角色进行一些配置。 在jBPM Console NG中,您将需要设置可用于安装的用户。 这些由JBoss安全域处理。 为了设置安全域,您需要执行以下操作:

  1. 编辑<jboss_as> /configuration/standalone.xml并添加一个新的安全域:<security-domain name =“ jbpm-console-ng” cache-type =“ default”> <authentication> <login-module code =“ UsersRoles ” flag =“” required”> <模块选项名称=” usersProperties” value =”” $ {jboss.server.config.dir} /users.properties” /> <模块选项名称=” rolesProperties” value =“” $ { jboss.server.config.dir} /roles.properties” /> </ login-module> </ authentication> </ security-domain>
  2. 添加users.properties和role.properties文件

    user.properties文件的内容:

    maciek=Merck
    salaboy=salaboy
    katy=katy
    john=john

    role.properties文件的内容:

    maciek=jbpm-console-user,kie-user,analyst,HR,PM,Reviewer
    salaboy=jbpm-console-user,user,analyst,PM,IT,Reviewer
    katy=jbpm-console-user,HR
    john=jbpm-console-user,Accounting

角色文件的唯一要求是为所有用户包括jbpm-console-user角色。 请注意,这是配置安全域的最简单方法,但是您可以使用更多高级选项,例如将安全域配置为使用LDAP服务器或数据库来验证用户和角色。 (https://docs.jboss.org/author/display/AS7/Security+subsystem+configuration)

然后就可以开始了,可以通过以下方法启动jboss:

  1. 进入bin目录:
    cd <jboss-as>/bin/
  2. 启动应用程序服务器:
    ./standalone.sh

在Openshift上

为了将应用程序部署到openshift中,您显然需要拥有一个openshift帐户。 设置帐户后,您将需要执行与JBoss应用程序中几乎相同的配置。 在您克隆的openshift git存储库中,您将具有一个特定目录来应用此配置:

.openshift/config

在这里,您可以找到standalone.xml文件,并且可以放置users.properties和Roles.properties文件。

因此,在standalone.xml文件中,您将需要像之前一样配置安全域,并添加users.property和Roles.properties文件。 除了此配置之外,您还需要设置一个系统属性来存储知识存储库:

<system-properties>
<property name="org.kie.nio.git.dir" value="~/jbossas-7/tmp/data"/>
</system-properties>

应用程序

现在,您可以使用该应用程序了,因此,如果您将浏览器指向托管模式提供的URL或指向
http:// localhost:8080 / jbpm-console-ng /您将能够访问登录表单。 如您所见,在进入应用程序之前,您需要提供凭据。 进入应用程序后,分为:

周期

在“创作”部分中,您将可以访问流程设计器以对业务流程进行建模。 流程管理部分将允许您列出可用的业务流程并启动新实例,并监视这些实例。 工作部分将使您能够访问任务列表(日历和网格视图)以处理分配给您的任务。 为了使用BAM部分,您将需要部署BAM仪表板应用程序,但我将在以后的文章中对此进行描述。 如果发现问题,请随时尝试并写回评论。

会费

您的反馈意见很重要,但是如果您想贡献一点,可以在github中派生jbpm-console-ng存储库: https : //github.com/droolsjbpm/jbpm-console-ng/如果您可以测试“任务列表”和“流程管理”屏幕,并在本文中写下反馈,以便我可以迭代地改进我们所拥有的。 我将写另一篇文章来描述屏幕,并列出一组您可以贡献的小任务。

参考: 尝试使用jBPM Console NG(测试版)! (针对开发人员)来自Drools&jBPM博客中的JCG合作伙伴 Mauricio Salatino。

翻译自: https://www.javacodegeeks.com/2013/05/try-the-jbpm-console-ng-beta.html

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

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

相关文章

三个实用的提升网页性能技巧

1、display属性设置 先将元素设为 display: none&#xff08;需要1次重排和重绘&#xff09;&#xff0c;然后对这个节点进行100次操作&#xff0c;最后再恢复显示&#xff08;需要1次重排和重绘&#xff09;。这样一来&#xff0c;你就用两次重新渲染&#xff0c;取代了可能高…

mysq在某一刻同时获取主从库的位置点

在从库进行锁表操作flush table with read lock&#xff0c; 通过show slave status\G 获取对应主库的位置点&#xff1a; show slave status\G*************************** 1. row *************************** Slave_IO_State: Waiting for master to send event Master_Host…

php在window磁盘管理,Windows Server 2008R2设置磁盘阵列

RAID(独立硬盘冗余阵列)指用多个硬盘组成一个高性能、大容量的一个硬盘组合。独立硬盘冗余阵列(RAID, Redundant Array of Independent Disks)&#xff0c;旧称廉价磁盘冗余阵列(RedundantArray of Inexpensive Disks)&#xff0c;简称硬盘阵列。其基本思想就是把多个相对便宜的…

解决Error: ENOENT: no such file or directory, scandir 安装node-sass报错

新项目开发需要安装依赖&#xff0c;但是安装完之后通过gulp运行项目&#xff0c;产生了一下的报错&#xff1a; 解决方案是执行一些方法&#xff1a; npm rebuild node-sass可是有时就是网络问题导致上面命令安装失败&#xff0c;查下失败提示&#xff0c;有可能是&#xff1a…

没有应用程序服务器

我们最近发布了有关从免费Plumbr部署中收集的应用服务器市场份额的数据 。 它产生了很好的共鸣-通过不同的渠道&#xff0c;我们获得了数百种有关如何解释数据的评论。 但是&#xff0c;通过各种渠道不断提出一种形式不同的论点。 无论是采用“ T omcat不是应用程序服务器 ”的…

HTML基础知识(未完待续)

一、HTML编辑工具&#xff1a;Sublime Text 二、HTML实体字符&#xff1a;1、&#xff08; 空格&#xff09;&#xff1a;&nbsp&#xff1b; 2、&#xff08;<&#xff09; &lt&#xff1b; 3、&#xff08;>&#xff09;&gt&#xff1b; 4、&#xff08;&a…

系统讲解CSS,前端开发最神奇的技术,新手的你一定不能错过

前面小编带领大家重温了前端开发中最基本的HTML语言。如果你已经掌握了这门语言&#xff0c;那么恭喜你&#xff0c;可以去深入了解CSS技术了。CSS技术最主要的功能就是弥补HTML标记对在页面中显示外观的不足&#xff0c;对这些标记对的默认外观进行美化。从本文开始&#xff0…

java 自定义对象 排序,使用自定义排序顺序对对象的ArrayList进行排序

问题我希望为我的地址簿应用程序实现一个排序功能。我想排序anArrayList contactArray.Contact是一个包含四个字段的类&#xff1a;名称&#xff0c;家庭电话号码&#xff0c;手机号码和地址。我想排序name。如何编写自定义排序功能来执行此操作&#xff1f;#1 热门回答(255 赞…

JUnit和Mockito合作

这次&#xff0c;我想对测试框架Mockito进行概述。 毫无疑问&#xff0c;这是用于测试Java代码的最受欢迎的工具之一。 我已经对Mockito的竞争对手EasyMock进行了概述。 这篇文章将基于有关EasyMock的示例应用程序。 我的意思是代表咖啡机功能的类。 用Mockito准备测试 通常&a…

发现2017年最好的CSS框架

如今&#xff0c;无数的框架出现在定期而少数人喜欢自助&#xff0c;Foundation和angular.js主宰了整个世界的发展。CSS代表用于描述HTML&#xff08;或XML&#xff09;文档表示的样式表语言。一个框架被定义为一个包&#xff0c;它由一组结构化的文件和标准化代码&#xff08;…

[python基础] python 2与python 3之间的区别 —— 默认中文字符串长

在python 2.7中使用len获得中文字符串长度时&#xff1a; >>> len(中文) 4 >>> a你好 >>> a \xc4\xe3\xba\xc3 >>> len(a.encode(utf-8))Traceback (most recent call last):File "<pyshell#77>", line 1, in <module&…

stixel world论文总结

1.The Stixel World - A Compact Medium Level Representation of the 3D-World:http://pdfs.semanticscholar.org/2df3/4dbfb4feeb2d7f40e90956ebc8de1f41a5e4.pdf stixel world开山鼻祖文章 https://zhuanlan.zhihu.com/p/27494151 对stixel world相关的一些概念进行解释 2.T…

php如何与数据库连接,PHP文章如何和数据库连接(1)

PHP文章如何和数据库连接(1)(1)Warning: mysql_query() [function.mysql-query]: Access denied for userODBClocalhost (using password: NO) in C:\Program Files\ApacheSoftware Foundation\Apache2.2\htdocs\TM\conn\conn.php on line 32Warning: mysql_query() [function.…

html基本标签与属性

HTML 超文本标记语言 html5 建立一个HTML文件&#xff1a; 文件名 . 后缀(html) 解析&#xff1a;就是去识别 注释&#xff1a;就是给开发人员开的批注------浏览器不去解析&#xff08;不去输出&#xff09; HTML的整体框架 <!DOCTYPE html> <html> <head> …

go基础编程 day-2

Go的常亮 关键字&#xff1a; Const Go常亮的多个定义&#xff1a; // 定义常亮的关键字 const// 定义多个常亮 const(PI 3.14const1 "1"const2 2const3 3 ) 全局变量的声明与赋值&#xff1a; var (name "wyc"name1 1name2 2name3 3 ) 一般类型…

EclipseLink JPA-RS简介

在之前的系列文章中&#xff0c;我介绍了如何创建一个将JPA用于持久层的JAX-RS服务。 EclipseLink包含一个名为JPA-RS的组件&#xff0c;该组件可用于轻松自动地将持久性单元公开为RESTful服务&#xff08;支持XML和JSON消息&#xff09;。 MOXy为JPA-RS提供XML和JSON绑定&…

如何对java分装,Angular4 JSONP + JAVA代码

一、在app.module.ts模块中&#xff0c;注入JsonpModule模块import {JsonpModule} from "angular/http";NgModule({imports: [JsonpModule //注入JSonpModule模块]})二、创建服务httpService&#xff0c;并注入jsonp和map(分装好的服务 可以直接调用)import {Injecta…

教你开发jQuery插件(转)

教你开发jQuery插件&#xff08;转&#xff09; 阅读目录 基本方法支持链式调用让插件接收参数面向对象的插件开发关于命名空间关于变量定义及命名压缩的好处工具GitHub Service Hook原文&#xff1a;http://www.cnblogs.com/Wayou/p/jquery_plugin_tutorial.html 要说jQuery 最…

gulp 常用插件汇总

2017-07-26更新&#xff1a;图片压缩插件使用gulp-smushit&#xff0c;gulp-smushit压缩率比较大&#xff0c;gulp-imagemin 图片压缩插件压缩率不明显。 见下图压缩率&#xff1a; 1、gulp安装 参照gulp官网进行安装&#xff1a;http://www.gulpjs.com.cn/docs/getting-start…

Nmap介绍

1.Nmap介绍 Nmap用于列举网络主机清单、管理服务升级调度、监控主机或服务运行状况。Nmap可以检测目标机是否在线、端口开放情况、侦测运行的服务类型及版本信息、侦测操作系统与设备类型等信息。 1.1 Zenmap Zenmap是Nmap官方提供的图形界面&#xff0c;通常随Nmap的安装包发布…