在Jbpm3版本号中,这个著名的开源项目并没有基于浏览器的图形化流程设计器,结果导致流程设计一直停留在CS阶段。

比方我之前做过的一个OA项目。项目中採用的就是Jbpm3。因为它不支持在浏览器中的图形化流程设计器。我们就须要跟客户进行充分沟通,然后在Eclipse中设计好流程,最后再将相应的图片与xml文件同一时候上传,然后再进行部署。想一想。这个过程是比較烦琐的。

在Jbpm4.1版本号以后。開始支持网页设置业务流程。它就是Signavio Web设计器。本文将介绍安装这个设计器以及遇到的问题。

Jbpm是一个开源框架,我们要进行Jbpm的开发须要做非常多准备。

比方安装数据库、建表、安装应用server、安装图形化流程设计器插件等等,对于一个新手来说,上来就要去准备这些,无形中就提升了开发的门槛。

然而,在Jbpm4.4版本号中,通过Ant脚本,提供了“一键获取”所须要的Jbpm4整套开发、执行和管理环境。

一、傻瓜式安装

假设你符合上面所说的,你是刚刚開始使用Jbpm进行开发,那么推荐你使用这样的方式。

条件

1、Apache Ant 1.7.0版本号或者以上版本号;

2、JDK 5.0 或者以上版本号;

3、检查你电脑上是否配置了Jboss_home环境变量。假设有的话,做好先删除,防止发生冲突。

安装步骤

1、打开命令控制台,进入文件夹${Jboss_home}/install。

2、执行ant脚本: ant demo.setup.jboss。

安装原理

原理非常easy,就是Jbpm开发者开发了一套ant脚本,大家能够简单看一下${Jboss_home}/install 文件夹下的build.xml文件。上述步骤中“ant demo.setup.jboss”实际上在后台运行了下面几步:

1、下载Jboss,并把它安装到${Jbpm_home}/jboss-5.1.0.GA文件夹下;

2、把Jbpm安装到Jboss;

3、安装Jbpm内置数据库HSQLDB,并在后台启动。

4、创建数据库表结构;

5、启动Jboss;

6、依据演示样例(来自example是文件夹)创建一个examples.bar业务流程归档。并把它公布到Jbpm数据库中;

7、从${jbpm_home}/install/src/demo/example.identities.sql初始化用户和组;

8、安装Eclipse到${jbpm_home}/eclipse;

9、启动Eclipse;

10、安装Jbpm Web控制台;

11、安装Signavio Web设计器。

只一个ant命令。它就在后台为你做了这么多工作,可是这样做也是有非常大缺点的:通过上面的步骤我们能够看出来。它须要下载Jboss和Eclipse,这个过程最少要一个小时的时间完毕,一杯咖啡的时间是远远不够的~~

二、选择性安装

假设你只须要安装Signavio Web设计器。那么你能够在控制台打开${Jboss_home}/install这个文件夹,然后执行例如以下命令:

ant install.signavio.into.jboss。

当然,你也能够通过这个命令指定安装路径:ant -Dsignavio.repo.path=c:/signavio-repo install.signavio.into.jboss

上面两种方式的安装实现。原理是一样的。仅仅只是第一种方式是在ant脚本中,配置了下载Jboss、安装Jboss等操作。实质上的安装Signavio Web设计器的过程。它们都是运行了一个操作:将${Jbpm_home}/install/src/signavio/jbpmeditor.war复制到你的容器的热部署文件夹中。所以,你也可以直接进行拷贝,相同可以实现设计器的安装。

訪问问题:

上述安装中,已经将jbpm中的jbpmeditor.war项目部署在jboss热部署文件夹中,所以訪问时仅仅需在浏览器中输入訪问地址:http://localhost:8080/jbpmeditor/p/explorer,就可以进行訪问:

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvbGl1NzY1MDIzMDUx/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast" alt="">

新建上图中的jPDL时,会报错:It is not possible to use the process editor with your web browser。

然后我在网上查到这篇文章:http://www.aperteworkflow.org/forum/-/message_boards/view_message/17020,文章中说的非常清楚,这是Jbpm4中的一个bug,须要改动jbpmeditor.war项目中的xml文件,将context-param中。名称为supportedBrowserEditor的改为例如以下内容:

<context-param>
<description>Define a reg exp for all user agents which are supported for the editor</description>
<param-name>supportedBrowserEditor</param-name>
<param-value>Firefox[\/\s]((3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20|21|22|23|24|25|26|27|28|29|30|31|32|32|33|34|35|36|37|38|39|40)\.\d+)|AppleWebKit|Opera.(9|10|11|12|13|14|15|16|17|18|19|20|21|22|23|24|25|26|27|28|29|30|31|32|33)\.\d+</param-value>
</context-param>

然后你就成功创建了jPDL,打开以下界面就算成了!

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvbGl1NzY1MDIzMDUx/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast" alt="">

只是,这里仅仅是初步的尝试。我们还须要对这个web设计器对汉语支持的兼容性问题、各浏览器的对该界面的兼容性问题进行进一步的考查。项目中选用Signavio Web设计器还是其它设计器,还须要进一步的技术调研。

安装Signavio Web设计器的更多相关文章

  1. SSH框架集成Activiti Modeler在线设计器页面出现问号及乱码的解决办法

    文·原创/朱季谦 工作流是一个针对企业用户.开发人员.系统管理员的轻量级工作流业务管理平台,其核心是使用Java开发的快速.稳定的BPMN2.0流程引擎.在我们日常开发当中,例如oa系统里的请假功能, ...

  2. YbSoftwareFactory 代码生成插件【十六】:Web 下灵活、强大的审批流程实现(含流程控制组件、流程设计器和表单设计器)

    程序=数据结构+算法,而企业级的软件=数据+流程,流程往往千差万别,客户自身有时都搞不清楚,随时变化的情况更是家常便饭,抛开功能等不谈,需求变化很大程度上就是流程的变化,流程的变化会给开发工作造成很大 ...

  3. 在网页中编辑报表的报表设计器Stimulsoft Reports Designer.Web报表控件

    Stimulsoft Reports Designer.Web报表控件是一款网页报表设计器.您想在网页中编辑您的报表吗?现在是可能的! Stimulsoft Reports Designer.Web ...

  4. 创建您的 ActiveReports Web端在线报表设计器

    概述 ActiveReports Web端在线报表设计器已经正式上线!看到它这么帅气.实用,你是不是也想自己动手创建一个? 现在我们就来教您,如何创建一个简单的 ActiveReports Web端在 ...

  5. activiti工作流的web流程设计器整合视频教程 SSM和独立部署

    本视频为activiti工作流的web流程设计器整合视频教程 整合Acitiviti在线流程设计器(Activiti-Modeler 5.21.0 官方流程设计器) 本视频共讲了两种整合方式 1. 流 ...

  6. activiti工作流的web流程设计器整合视频教程 SSM 和 独立部署

    本视频为activiti工作流的web流程设计器整合视频教程 整合Acitiviti在线流程设计器(Activiti-Modeler 5.21.0 官方流程设计器) 本视频共讲了两种整合方式 1. 流 ...

  7. F2工作流引擎之-纯JS Web在线可拖拽的流程设计器(八)

          Web纯JS流程设计器无需编程,完全是通过鼠标拖.拉.拽的方式来完成,支持串行.并行.分支.异或分支.M取N路分支.会签.聚合.多重聚合.退回.传阅.转交,都可以非常方便快捷地实现,管理员 ...

  8. activiti工作流的web流程设计器整合视频教程

    本视频为activiti工作流的web流程设计器整合视频教程 整合Acitiviti在线流程设计器(Activiti-Modeler 5.21.0 官方流程设计器) 本视频共讲了两种整合方式 1. 流 ...

  9. 基于Extjs的web表单设计器 第七节——取数公式设计之取数公式的使用

    基于Extjs的web表单设计器 基于Extjs的web表单设计器 第一节 基于Extjs的web表单设计器 第二节——表单控件设计 基于Extjs的web表单设计器 第三节——控件拖放 基于Extj ...

随机推荐

  1. js指定区域全屏

    <html>     <head>         <title>js指定区域全屏</title>         <style>      ...

  2. React 第三天

    第三天 01:在组件中使用style行内对象并封装样式对象: CmtItem.jsx: import React from 'react' //第一层封装 将样式对象和UI结构分离 // const ...

  3. vue-cli解析

    前言 这段时间,算是空出手来写几篇文章了.由于很久都没有时间整理现在所用的东西了,所以,接下来会慢慢整理出一些文档来记录前段时间的工作和生活. 这篇文章的主题是vue-cli的理解.或许,很多人在开发 ...

  4. 【codeforces 429D】Tricky Function

    [题目链接]:http://codeforces.com/problemset/problem/429/D [题意] 给你n个数字; 让你求出一段区间[l,r] 使得 (r−l)2+(∑rl+1a[i ...

  5. 简单搭建zookeeper集群分布式/伪分布式

    分布式搭建 一.下载zookeeper安装包 自行下载:我用的是 zookeeper-3.5.4-beta.tar.gz 二.环境准备 1. 我的虚拟机自带的java是1.7的,这个版本要求java1 ...

  6. Java - 多线程Callable、Executors、Future

    http://blog.csdn.net/pipisorry/article/details/44341579 Introduction Callable接口代表一段能够调用并返回结果的代码; Fut ...

  7. github README.md教程

    github README.md教程 总结 github中README.md通过特殊字符标记和缩进来达到格式控制,也可以用HTML标签来实现格式控制. 教程一: Markdown 的目标是实现「易读易 ...

  8. []HAOI2008] 硬币购物 解题报告 ( 完全背包+容斥原理)

    题目链接:https://www.luogu.org/problemnew/show/P1450 题目描述: 题解: 如果去掉限制的话,这就是一个完全背包. 我们可以考虑先去掉限制,把这个完全背包做出 ...

  9. Kafka框架基础

    * Kafka框架基础 官网:kafka.apache.org 框架简介 Apache Kafka是分布式发布-订阅消息系统.它最初由LinkedIn公司开发,之后成为Apache项目的一部分.Kaf ...

  10. codeforces 401 B Sereja and Contests【贪心】

    题意:给出最后的时间n,div 1必须和div2一起举行,并且div2的时间总是比div1大1 给出Sereja(只能参加div2)参加过的k场比赛的时间,问他最少错过了多少场div2,最多错过了多少 ...