jbpm4.3中文开发手册
- 格式:pdf
- 大小:951.60 KB
- 文档页数:84
jBPM4.3简单深入理解(一)工作流(系统)主要概念工作流引擎:工作流的核心组件,对流程实例、任务实例以及其状态进行管理流程定义:预先定义的业务流转逻辑流程实例:业务的一次实际流转过程参与者:任务的执行者活动(任务):组成流程定义的节点活动实例:组成流程实例的元素流转:从一个节点到另一个节点这一行为工作列表:当前需要办理的任务集合开发步骤1)根据实际应用场景创建流程文件;即编写*.jpdl.xml文件2)部署流程文件或流程资源到系统中;3)执行流程(使用指定的流程定义);3.1)启动流程实例3.2)获取任务3.3)开始任务3.4)结束任务3.1到3.4是办理一个任务的过程,流程的执行就是启动流程实例+一次次办理任务的过程。
流程在实际应用场景中的一些操作一.流程的定义管理流程定义的发布、查询、删除、暂停、恢复二.流程实例管理流程实例的启动、显示流程图、执行、暂停、恢复三.任务管理分配任务、收回任务、定时任务、任务与表单绑定四.流程的历史查询任务的历史、流程实例历史、活动历史---下面开始进行代码描述------在详细描述之前,我们先来了解一下流程引擎ProcessEngine引用One ProcessEngine object can be used by all reque sts and threads in an application. Here’s how you can obtain a ProcessEngine把这个交给spring去管理Java代码<beanid="springHelper"class="org.jbpm.pvm.internal.processengine.Spring Helper"/><beanid="processEngine"factory-bean="springHelper"factory-method ="createProcessEngine"/>我们需要的一些服务都是通过流程引擎得到的RepositoryService repositoryService = processEngine.getRepositoryService(); ExecutionService executionService = processEngine.getExecutionService();TaskService taskService = processEngine.getTaskService();HistoryService historyService = processEngine.getHistoryService();ManagementService managementService = processEngine.getManagementService();一.流程的定义管理1.1流程定义的发布(即部署流程文件或流程资源到系统中)流程定义*.jpdl.xml的内容可以从文件,网址,字符串,输入流或zip输入流中获得Org.jbpm.api.newdeployment代码public interface NewDeployment extends Deployment {.../** adds a resource as a string */NewDeployment addResourceFromString(String resourceName, String string);/** adds a resource as a string */NewDeployment addResourceFromInputStream(String resourceName, InputStream inputStream);/** adds a resource as a resource from the classpath */NewDeployment addResourceFromClasspath(String resourceName);/** adds a resource as a url */NewDeployment addResourceFromUrl(URL url);/** adds a resource as a zip stream */NewDeployment addResourcesFromZipInputStream(ZipInputStream zipInputStream);/** adds a resource from a file */NewDeployment addResourceFromFile(File file);...}在测试的时候Java代码ProcessEngine processEngine = new Configuration().buildProcessEngine(); RepositoryService repositoryService = processEngine.getRepositoryService();//布署当前目录下test.jpdl.xml文件String deploymentId = repositoryService.createDeployment().addResourceFromClasspath("test.jpdl.xml").de ploy();在我们实际应用中,addResourceFromInputStream和addResourcesFromZipInputStream运用较多。
最近学习jbpm4.3.一个工作流框架。
准备工作请参考jbpm4.3用户指南。
注意的地方就是jbpm.hibernate.cfg.xml里配置数据库连接。
另外在jbpm4.3zip包下install的db里执行对应数据库的初始化脚本.start...关键对象ConfigurationProcessEngineRepositoryServiceExecutionServiceTaskServiceHistoryServiceManagementService其用法请参考用户指南.本例子流程图如下:A用户提出请假申请--》B用户审批--》C用户审批。
流程结束。
这个例子只用到两张自定义表,用作演示,一张为用户表,仅有username和password字段。
用作登录验证另一张为请假表单表,记录每一例请假表单,有id,title,content,process_id字段.其中process_id和jbpm4的流程实例关联。
index.jsp关键代码如下:----------------------------------------------------------------------------------------------<form action="login" method="post"><label for="username" >用户名:</label><input type="text" name="username" id="username" /><br/><label for="password" >密码:</label><input type="password" name="password" id="password" /><br/><input class="submit" type="submit" value="登录" /></form>----------------------------------------------------------------------------------------------action对应为登录验证的login servlet,这个比较简单,就是从user表中找记录登录成功后跳转至welcome.jsp页面,关键代码如下:<div><div class="navigate"><ul><li><a href="todolist" target="result" onclick="javascript:document.getElementById('ifr').src=todolist">代办事项</a></li><li><a href="postleave" target="result" onclick="javascript:document.getElementById('ifr').src=postleave">请假申请</a></li><li><a href="deployleave" target="result">部署请假流程</a></li><li><a href="logout">注销</a></li></ul></div><div class="main"><iframesrc="" width="99%" height="99%" frameborder="0" id="ifr" name="result"></iframe></div></div>页面分为左右两部分,左边为导航区,点击相应链接,右边显示相应模块点击请假申请,右边弹出请假表单,填写完成后,点击提交,即启动一个请假流程实例。
jBPM开发入门指南jBPM开发入门指南(1)工作流虽然还在不成熟的发展阶段,甚至还没有一个公认的规范标准。
但其应用却已经在快速展开,这说明市场对工作流框架的需求是急迫而巨大的。
我们公司的后台短信管理系统涉及短信编发、领导层层审核等操作,这是一个比较典型的工作流系统。
过去我们用的工作流引擎是 shark ,然后在使用后发现其过于庞大,后台数据库操作频繁而未进行优化,直接导致的后果就是前台操作缓慢。
于是经研究决定,将工作流引擎由 shark 换成 jBPM 。
jBPM 之前是一个开源软件,后加入 JBoss 组织。
正好我们公司也是用 JBoss 的。
不过 jBPM 并没有绑定在 JBOSS 上, Tomcat 等也可以使用它。
jBPM 的正处在不断发展中,做为开源软件的特点,其设计变化往往很大。
所以一些过去的资料可能已经不适用了。
于是作者根据自己的使用经验,重新整理出这份文档,以备学习参考。
注:本文使用的 jBPM 版本为 3.1.1环境准备1、安装JDK所有 JAVA 开发第一个需要安装的,没什么好说的。
记得把系统变量 JAVA_HOME 设上。
2、安装AntAnt 是使用 jBPM 必须的一个工具。
jBPM 中的很多操作都要用到 Ant 。
安装方法:( 1 )先下载: /dist/ant/binaries/ ,选一个如: apache-ant-1.6.5-bin.zip 。
( 2 )解压到 D:\ant (当然其他目录也可以)。
( 3 )设置如下系统变量: ANT_HOME=d:\ant 。
( 4 )把 %ANT_HOME%\bin 加入到系统变量 PATH 中。
3、安装EclipseEclipse 不是开发 jBPM 必须的工具,但它是对 jBPM 开发很有帮助的工具,特别是 jBPM 提供了一个 Eclipse 插件用来辅助开发 jBPM 。
关于 Eclipse 的安装不赘述了,本文用的版本是: Eclipse3.24安装 jBPMjBPM 的下载地址: /products/jbpm/downloadsz JBoss jBPM 是 jBPM 的软件包z JBoss jBPM Starters Kit 是一个综合包,它包括了 jBPM 软件包、开发插件、一个配置好了的基于 JBoss 的 jBPM 示例、一些数据库配置文件示例。
jBPM开发入门指南(4)7 jBPM 的客户端开发有了前面的 HelloWorld 后台流程,我们就要开始客户端程序了。
正如前面提到的,本文不写 JSP ,而改采用 JUnit 的形式,输出则用 System.out.println 。
举一反三,知道在方法中输入及用 println 输出,在 JSP 和 SWING 等 GUI 界面还不是一样嘛。
这个 JUnit 客户端,我们就借用创建项目时自动生成的SimpleProcessTest.java 了,改写后如下:package com.sample;import junit.framework.TestCase;import org.jbpm.JbpmConfiguration;import org.jbpm.JbpmContext;import org.jbpm.context.exe.ContextInstance;import org.jbpm.graph.def.ProcessDefinition;import org.jbpm.graph.exe.ProcessInstance;public class SimpleProcessTest extends TestCase {private JbpmConfiguration config= JbpmConfiguration.getInstance();private JbpmContext ctx = config.createJbpmContext();// helloworld对应于jbpm_processdefinition表的name字段值,也即processdefinition.xml的name// 这个值得取比较耗时,实际项目里最好和“数据库的JDBC连接”一样,让它共享,不要频繁打开关闭。
private ProcessDefinition processDefinition =ctx.getGraphSession().findLatestProcessDefinition("helloworld");public void testNewRequest() {long id = newRequest();System.out.println("id=" + id);checkNewRequest(id);confirmRequest(id);checkconfirmRequest(id);ctx.close();// 关闭jbpm容器}/***创建一个请假单**@return*/private long newRequest() {// 创建一个新流程ProcessInstance pi = processDefinition.createProcessInstance();// 取得流程的数据环境ContextInstance ci = pi.getContextInstance();// 创建一张请假单ci.setVariable("name", "陈刚" );ci.setVariable("day", 2);assertEquals(null, ci.getVariable("note"));// 请假申请结束,转到下一个流程结点pi.signal();return pi.getId();}/***检查请假单的数据**@param id*/private void checkNewRequest(long id) {// 从数据库提取原流程ProcessInstance pi = ctx.loadProcessInstance(id);// 取得流程的数据环境ContextInstance ci = pi.getContextInstance();// 创建一张请假单assertEquals("陈刚" ,ci.getVariable("name"));assertEquals(Integer.valueOf(2), ci.getVariable("day"));assertEquals("我要请假" , ci.getVariable("note"));// 当前是结点为confirmassertEquals(pi.getRootToken().getNode().getName(), "confirm");// 流程还没结束assertFalse(pi.hasEnded());}/***审批陈刚的请假申请**@param id*/private void confirmRequest(long id) {ProcessInstance pi = ctx.loadProcessInstance(id);ContextInstance ci = pi.getContextInstance();// 不通过ci.setVariable("note", "不准请假,继续加班" );// 审批结束,到下一个流程结点pi.signal();}private void checkConfirmRequest(long id) {ProcessInstance pi = ctx.loadProcessInstance(id);ContextInstance ci = pi.getContextInstance();// ConfirmAction类在signal后执行,所以覆盖了经理的审批意见assertEquals("准假" , ci.getVariable("note"));// 当前是结点为endassertEquals(pi.getRootToken().getNode().getName(), "end");// 流程结束了assertTrue(pi.hasEnded());}}这个例子还是很简单,而且关键是缺少用户、组、权限等工作流系统必须的东西,不过没关系。
1 前台页面 (2)1.1前台总览: (2)1.2常用节点图标说明: (2)1.3前台操作: (3)2 后台设计 (4)2.1 Myeclipse配置JBPM4 (4)2.2 Jar包引入: (6)2.3 在项目中加入jbpm的配置文件: (6)2.4 后台接收说明: (6)2.5 后台处理说明: (7)3 Jbpm说明: (8)3.1 Jbpm常用的对象与方法: (8)3.2 流程的发布有以下几种方式: (8)3.3 流程开始: (9)3.4 处理人获得任务列表: (9)3.5 处理人结束任务 (9)4 补充: (10)4.1 用java类来动态指定处理人: (10)4.2 用java类来作判定条件: (11)4.3 流程中的变量 (12)4.3.1 流程实例变量的创建与获取: (12)4.3.2 任务实例变量的创建: (12)4.3.3 变量总结: (13)1 前台页面1.1前台总览:1.2常用节点图标说明:1.开始(start)节点,表示一个流程的开始,name属性作用主要是匹配节点流向。
2.任务(task)节点,表示流程执行的任务处理节点。
task节点属性有name(任务节点的名称),assignee(任务节点的执行人),g(节点坐标)。
其中name属性作用主要是匹配节点的流向;assignee属性有5中表达方式1、none这种表达方式就是不指定任务的执行人,一般会有动态指定,在task中加<assignment-handler class="com.yhte.GetAssignee"></assignment-handler>用class中java类来动态指定执行人。
2、assignee 可以指定特定的一个人,也可以用表达式来指定,表达式一般写作#{name}。
3、candidate-groups 指定了一个组来执行,指定了组中的每个成员都可以来执行此任务节点,但只要其中一个成员完成,那么这个任务节点便结束。
使用jBPM开发基于WEB的工作流,首先需要搭建好开发环境,经过一段时间的摸索,先将环境搭建的步骤做个简要说明:1.前提:Eclipse 3.2MyEclipse 5.0GAjBPM3.1.2(jbpm-starters-kit-3.1.2)Oracle 10gStruts1.2Hibernate32.至于数据库的脚本生成就不说了,有些参考资料讲得比较清楚,也有备份。
3.安装完JBPM的相关Eclipse插件以后,就可以使用Eclipse创建(new...)一个Process Project以及相关的ProcessDefinition,但这不是我们想要的。
我们想要的从步骤4开始。
4.使用Eclipse创建一个Web Project,加入必要的框架包,如Struts,JSTL等。
5.在构建路径中配置jBPM库,这也是环境搭建的重点。
由于使用默认的Process Project 可以帮我们创建好jBPM库,但没有帮我们创建WEB环境,因此,我们首先建立WEB工程,再来搭建JBPM库。
6.在工程的“Build Path”中选择配置构建路径(Config Build Path...)。
7.在打开的窗口中选择右边的Libraries标签库,通过Add Library选项,在打开的窗口中添加一个jBPM库。
8.可以看到没有所谓的jBPM库选项,因此要自己动手,选择User Library选项,创建一个自定义的用户库,取名为jBPM Library [jBPM Runtime]。
9.添加jar文件到我们自定义的User Library中,需要添加的内容是:jbpm-starters-kit-3.1.2\jbpm.3\lib目录下的所有jar包;jbpm-starters-kit-3.1.2\jbpm.3\build目录下的所有jar包。
OK,开发环境初步搭建完成,我们同样可以在新建的工程中自由的创建Process Definition 文件。
程序员开发手册安全生产信息化管理系统》程序员开发手册1.概述目的:1.方便代码的交流和维护。
2.不影响编码效率,不与大众惯冲突。
3.使代码更美观,阅读更方便。
4.使代码逻辑更清晰,更易于理解。
范围:本手册适用于开发部全体人员,在软件项目开发的代码编写和后期维护阶段起作用。
警示:对于不符合编码规范的代码,必须在限期内修正。
逾期视为工作过失,部门主管或相关负责人视具体情况做出相关处理。
术语定义:1.匈牙利命名法已被禁用。
2.推荐使用帕斯卡(pascal)命名法或骆驼(Camel)命名法。
2.代码格式列宽:1.为了防止在阅读代码时不得不滚动源代码编辑器,每行代码或注释在一般显示频率下不得超过一显示屏,代码列宽控制在110字符左右。
2.系统中部分代码可以不遵循此原则,比如VIWFormItemDetail[]dv=(VIWFormItemDetail[]),sqlParams)。
3.SQL语句拼接、字符串拼接、函数参数名过长、判断语句过长的代码要遵循以上原则。
换行:1.当表达式超出或即将超出规定的列宽,一行被分为几行时,通过将串联运算符放在每一行的末尾而不是开头,清楚地表示没有后面的行是不完整的。
例如:StringquerySql=“SELECTProjectId”+“,ProjectTitle”+“FROM Project”。
2.每一行上放置的语句避免超过一条。
3.当表达式超出或即将超出规定的列宽,遵循以下规则进行换行:1) 在逗号前换行。
2) 在操作符前换行。
3) 规则1优先于规则2.例如:StringBuilder querySql = new StringBuilder();("SELECT。
AS PK ");(",",",");("。
AS ISBNCode");在编写代码时,应该遵守一定的格式规范,以提高代码的可读性和可维护性。
JBPM指南JBPM(Java Business Process Management)是一个开源的、轻量级的、面向业务流程的工作流引擎。
它提供了一套完整的业务流程管理解决方案,包括流程的设计、执行、监控和优化等功能。
它的核心理念是将业务逻辑与技术实现相分离,使得业务流程的设计和执行更加灵活,同时也提高了开发的效率。
本指南旨在为培训机构提供JBPM的相关知识和实践指导,帮助培训机构更好地理解和应用JBPM。
一、JBPM概述1.JBPM的特点:JBPM是基于领域特定语言(DSL)的工作流引擎,支持面向业务流程的开发和管理,可以将复杂的业务流程拆解为多个简单的流程节点进行管理和执行。
2.JBPM的架构:JBPM的架构包括流程定义、流程实例和任务管理三个核心模块,同时还包括与其他系统进行集成的服务和界面模块。
3.JBPM的应用场景:JBPM可以应用于各种复杂的业务流程场景,如订单处理、审批流程、工作流程等。
二、JBPM的安装和配置2.JBPM的配置:介绍JBPM的配置文件,包括数据源配置、日志配置、用户管理等。
三、JBPM的流程设计和执行1. 流程定义:介绍使用JBPM Designer工具进行流程定义的方法,包括创建流程、定义流程节点和流程跳转等。
2.流程执行:介绍JBPM引擎的流程执行过程,包括启动流程实例、执行节点任务、变量传递等。
四、JBPM的任务管理和监控1.任务定义:介绍如何创建和定义任务节点,包括任务的输入输出参数、任务的执行者等。
2.任务管理:介绍如何查询和管理流程中的任务,包括任务的分配、处理和完成等。
3.流程监控:介绍如何监控流程的执行情况,包括查询流程实例状态、查询流程历史记录等。
五、JBPM的集成和扩展1.与其他系统的集成:介绍JBPM与其他系统的集成方法,包括使用RESTAPI、使用消息队列等。
2.JBPM的扩展:介绍如何扩展JBPM的功能,包括自定义节点、自定义任务等。
六、JBPM的最佳实践1.流程建模的最佳实践:介绍如何设计和优化业务流程,包括流程的可读性和可扩展性等。
JBPM开发指南目 录一、概述 (4)二、第一个流程 (4)2.1、开始前的准备 (4)2.2 、Hello World 例子 (5)三、学习JPDL (9)3.1 、简介 (9)3.2 、流程版本(Version) (10)3.3 、流程定义 (11)3.3.1 process-definition(流程定义) (11)3.3.2 node(自动节点) (11)3.3.3 start-state(开始状态) (12)3.3.4 end-state(结束节点) (12)3.3.5 state(状态) (13)3.3.6 task-node (任务节点) (13)3.3.7 fork(分支) (15)3.3.8 join(联合) (16)3.3.9 decision(决策) (17)3.3.10 transition(转换) (18)3.3.11 event(事件) (19)3.3.12 action(动作) (19)3.3.13 script(脚本) (20)3.3.14 expression(表达式) (21)3.3.15 variable(变量) (22)3.3.16 handler(句柄) (22)3.3.17 timer(定时器) (23)3.3.18 create-timer(创建定时器) (24)3.3.19 cancel-timer(取消定时器) (25)3.3.20 task(任务) (25)3.3.21 swimlane(泳道) (26)3.3.22 assignment(委派) (27)3.3.23 controller(控制器) (28)3.3.24 process-state 子流程 (28)3.3.25 sub-process 子流程 (29)3.3.26 condition 条件 (29)3.3.27 exception-handler 异常处理 (30)小结 (32)四、流程中任务的分配 (35)4.1 assignment-handler方式的任务分配 (36)4.2 swimlane方式的任务分配 (37)五、JBPM持久化 (39)5.1 特殊数据库支持 (39)5.2 JBPM数据库的安装 (39)5.2 JBPM流程发布 (42)5.2.1 搭建JBPM的WEB应用 (43)5.2.2 发布第一个流程 (45)六、日历(Scheduler) (50)6.1 Scheduler在C/S程序上的应用 (51)6.2 Scheduler 在Web上的应用 (53)6.3 Scheduler时间的分类 (55)七、异步执行 (58)八、JBPM流程建模与应用 (58)7.1 JBPM的建模工具 (58)7.1.1 建模工具的安装 (59)7.2 公司报销流程示例 (61)7.2.1 流程建模 (61)7.2.2 流程数据库搭建 (71)7.2.3 构建业务表 (74)7.2.4 报销流程的发布 (77)7.2.5 应用程序搭建 (79)九、写在最后 (91)一、概述JBPM是一个扩展性很强的工作流系统,百分百用JAVA语言开发,持久层采用Hibernate 实现,理论上说,只要Hibernate支持的数据库JBPM都支持。
jbpm4开发步骤2009年08月07日星期五 16:09jBPM4开发入门指南1.1、安装JDK1.2、安装AntAnt 是使用jBPM 必须的一个工具。
jBPM 中的很多操作都要用到Ant 。
安装方法:(1 )先下载:为了执行ant脚本,你需要1.7.0或更高版本的apache ant:/bindownload.cgi(2 )解压到D:\ant (当然其他目录也可以)。
(3 )设置如下系统变量:ANT_HOME=d:\ant 。
(4 )把%ANT_HOME%\bin 加入到系统变量PATH 中。
安装jBPMjBPM 的下载地址:/project/showfiles.php?group_id=70542&package_id=2680682 、建库MySQL 中创建一个库,库名:jbpmdb3 、生成建表的SQL 语句并建表这个构建文件${jbpm.home}/db/build.xml包含了脚本用来创建和删除数据库结构的操作。
进入到这个目录下,运行ant -p 可以获得更多细节。
你的数据库中创建表结构:首先,更新${jbpm.home}/db/jdbc中的数据库配置文件。
然后,在D:\jbpm-4.0\db\build.xml<!-- DEFAULT PROPERTY VALUES --><property name="database" value="mysql" />更改为mysql然后在db目录下执行ant create.jbpm.schema可以看到MySQL 客户端中执行“ mysql.create.sql ”脚本,这样将在jbpmdb 库中创建一个个的数据表。
---------------------------------------------------------------------安装jBPM 4的Eclipse 开发插件jBPM 4的Eclipse 开发插件只有GPD流程设计器(GPD)图形化流程设计器(GPD)使用Eclipse作为其平台,并把GPD插件安装到eclipse上。
ZIYA企业移动管理平台用户手册(版本号:4.3)上海天畅信息技术有限公司2014.12目录1.引言 (9)1.1.背景 (9)1.1.1.应用背景 (9)1.1.2.面临挑战 (9)2.系统简介 (9)2.1.系统介绍 (9)2.2.系统平台介绍 (9)2.3.系统特性 (10)3.使用说明 (11)3.1.登录系统 (11)3.2.系统首页 (11)3.3.模块导航栏 (12)3.4.功能栏 (13)4.设备管理 (14)4.1.激活设备 (14)4.2.预录入激活 (15)4.3.非录入激活 (21)4.4.自主注册 (22)4.5.设备列表 (23)4.5.1.新增设备 (39)4.5.2.批量上传设备信息 (40)4.5.3.设备操作 (41)4.6.设备审核 (41)4.7.设备状态同步 (43)5.应用商店 (44)5.1.应用管理 (44)5.1.1.应用程序列表 (44)5.1.2.应用程序上传 (49)5.1.3.应用程序审核 (50)5.1.4.应用评论审核 (52)5.2.应用设置 (52)5.2.1.应用黑名单 (52)5.2.2.应用白名单 (58)5.2.3.应用强制安装 (61)5.2.4.应用安全 (65)5.2.5.独占安装 (69)5.2.6.独占应用发送历史 (72)6.策略管理 (73)6.1.系统策略 (73)6.2.自定义策略 (106)6.2.1.策略列表 (106)6.2.2.新建策略 (108)6.3.策略发送历史 (113)6.3.1.系统策略历史 (113)6.3.2.自定义策略历史 (114)7.1.告警列表 (115)7.2.新增告警 (116)7.3.编辑告警 (123)7.4.删除告警 (125)7.5.复制告警 (127)7.6.告警历史 (128)8.报表管理 (129)8.1.应用下载量报表 (129)8.2.应用下载百分比报表 (131)8.3.页面访问次数报表 (132)8.4.应用流量统计报表 (133)8.5.丢失报表 (135)8.6.网络流量报表 (135)8.7.网络流量明细 (135)8.8.终端信息统计报表 (136)8.9.应用安装使用情况报表 (138)8.10........................................................................................................................... 设备淘汰明细1398.11................................................................................................................... 设备资产情况报表1408.12................................................................................................................... 策略生效情况报表1418.13................................................................................................................... 设备激活明细报表1418.14................................................................................................................... 设备合规情况报表1428.15................................................................................................................... 设备违规明细报表1439.1.文件列表 (143)9.2.文件上传 (145)9.3.文件审核 (147)9.4.远程文件 (148)9.4.1.批量拉取 (150)9.4.2.批量删除 (151)9.4.3.批量下发 (151)9.5.客户端文件 (152)10.系统管理 (153)10.1........................................................................................................................... License管理15310.2................................................................................................................................... 系统日志15410.3............................................................................................................................EMM客户端15410.4.............................................................................................................. 同步LDAP用户数据15610.5................................................................................................................................... 门户评论15710.6................................................................................................................................... 消息反馈15810.7.............................................................................................................................. LOGO配置15911.参数管理 (160)11.1........................................................................................................................... 设备基础信息16011.2........................................................................................................................... 应用程序分类16311.4................................................................................................................... 消息发送账号配置17011.5....................................................................................................................... 客户端首页图片17212.用户权限 (174)12.1................................................................................................................................... 用户管理17412.2................................................................................................................................... 角色管理18012.3................................................................................................................................... 分支机构18313.门户资讯 (186)13.1................................................................................................................................... 新闻上传18613.2................................................................................................................................... 新闻审核18713.3................................................................................................................................... 新闻列表18813.4................................................................................................................................... 新闻发布18914.ANDROID客户端使用 (189)14.1................................................................................................................................... 应用中心18914.1.1.新增应用 (190)14.1.2.卸载应用 (192)14.2................................................................................................................................... 应用商店19514.2.1.查看应用商店 (195)14.2.2.评论应用 (200)14.3.1.查看资讯 (202)14.3.2.回复/查看消息 (204)14.3.3.查看新闻 (205)14.4................................................................................................................................... 查看更多20714.4.1.查看更多信息 (207)14.4.2.常规 (208)14.4.3.门户更新/评论 (211)14.4.4.安全 (211)14.4.5.故障排查 (212)14.4.6.注销 (213)15.IOS客户端使用 (213)15.1.................................................................................................................................. 应用中心21315.1.1.查看应用 (213)15.1.2.新增应用 (213)15.1.3.删除应用 (214)15.2................................................................................................................................... 应用商店21515.2.1.查看应用商店 (215)15.2.2.评论应用 (219)15.3................................................................................................................................... 公司资讯22115.3.1.查看资讯 (221)15.3.2.回复/查看消息 (222)15.3.3.查看新闻 (224)15.4................................................................................................................................... 查看更多22415.4.1.查看更多信息 (224)15.4.2.常规 (226)15.4.3.门户更新/评论 (226)15.4.4.安全设置 (226)15.4.5.注销 (227)1.引言1.1.背景1.1.1.应用背景随着企业移动应用的扩展和智能终端设备的普及,如何在企业信息安全和员工终端设备应用之间找到一个平衡点;在保障企业信息的完整性和安全性的前提下,同时允许员工使用移动终端设备,提高工作效率。
JBPM4.4相关详细配置及使用文档所需软件:Jbpm 4.4、Myeclipse8.6(或eclipse3.5)、Apache、Tomcat6.0、jdk1.6、sqlserver2000一、Myclipse中安装jbpm插件(以Myeclipse8.6为例)1)下载jbpm4.4并解压;2)打开myclipse→选择help菜单,选择software and workspace center3)选择software然后选择右上角add site4)选择add from archive filejbpm-gpd-site.zip6) name 随便输入即可(比如jbpm )→点击OK ,这样下面就看到多一个jbpm ,一个一个选中jpd 下面的文件,点击右击“add to profile ”,点击右下角“apply change ”按钮7) 安装完成后会重启Myeclipse ,重启后在新建项目里会多出一项“JBoss${jbpm_home}\jbpm-4.4\install\src\gpd\jbp m-gpd-site.zipjBPM”,如下图所示:8)表单定制图形化界面乱码解决:找到安装目录Genuitec\MyEclipse8.5\myeclipse.ini文件添加-Dfile.encoding=UTF-8重启MyEclipse即可。
(注此方法适于MyEclipse7.5以上版本)MyEclipse7.5以下(或eclipse3.5)直接找eclipse安装文件下的eclipse.ini添加-Dfile.encoding=UTF-8二、安装Apache-ant(以1.8.1为例)下载Ant,本文使用apache-ant-1.8.1:/dist/ant/binaries/安装方法如下:1)解压到后的apache-ant-1.8.1目录;2)设置环境变量:在环境变量中添加ANT_HOME,值为安装目录(如F:\java\java_tool\ant\apache-ant-1.8.1);3)把%ANT_HOME%\bin 加入到环境变量 PATH 中;4)测试是否安装成功:在CMD DOS模式下运行 ant -version 回车,看输出说明配置成功三、sqlserver配置(以sqlserver2000为例)1)创建Dynamic Web project或Java project工程;2)右击工程导入jbpm4.4 \lib下所有jar包及jpbm.jar包;3)将解压的jbpm-4.4\examples\src下的所有配置文件拷贝工程src下;配置文件名如下:jbpm.cfg.xml、jbpm.hibernate.cfg.xml、jbpm.mail.properties、jbpm.mail.templates.xml、logging.properties4)修改jbpm.hibernate.cfg.xml<property name="hibernate.dialect">org.hibernate.dialect.SQLServerDialect</property><property name="hibernate.connection.driver_class">net.sourceforge.jtds.jdbc.Driver</property><property name="hibernate.connection.url">jdbc:sqlserver://192.168.1.100:1433;DatabaseName=jbpm</property><property name="ername">sa</property><propertyname="hibernate.connection.password">sa123456</property><property name="hibernate.hbm2ddl.auto">create-drop</property><property name="hibernate.format_sql">true</property>5)下载JDTS第三方驱动(支持SQL2000,2005,SYBASE),下载解压后找jtds-1.2.5.jar并复制WEB-INF/lib目录下,然后右击工程导入此jar驱动包,下载地址:/为什么要用第三方驱动的原因是微软公司的驱动的兼容性不太好如下:✓如果采用jdbc-odbc驱动,那么就必须按照查询顺序来一次读取(不论有没有image或text类型);✓如果采用微软提供的ms sql server jdbc driver,如果查询语句中,不存在image或text类型字段,那么可以按照无序获取;✓如果采用微软提供的ms sql server jdbc driver,如果查询语句中,存在image或text类型字段,那么就必须按照顺序读取,否则就会报告Driver]ResultSet can not re-read row data for column之类的错误;✓如果想不查询语句中有没有image或text类型字段,都可以不按照顺序获取,或重复获取。
1.51CTO下载jBPM44API中文整理文档1.1.工作流有关概念工作流(Workflow),就是“业务过程的部分或者整体在计算机应用环境下的自动化”,它要紧解决的是“使在多个参与者之间按照某种预定义的规则传递文档、信息或者任务的过程自动进行,从而实现某个预期的业务目标,或者者促使此目标的实现”。
工作流管理系统(WfMS,Workflow Management System)的要紧功能是通过计算机技术的支持去定义、执行与管理工作流,协调工作流执行过程中工作之间与群体成员之间的信息交互。
工作流需要依靠工作流管理系统来实现。
工作流管理系统是定义、创建、执行工作流的系统,应能提供下列三个方面的功能支持:1.定义工作流:包含具体的活动、规则等2.运行操纵功能:在运行环境中管理工作流过程,对工作流过程中的活动进行调度3.运行交互功能:指在工作流运行中,WfMS与用户(活动的参与者)及外部应用程序工具交互的功能。
一、定义工作流二、执行工作流使用工作流管理系统的优点1.提高系统的柔性,习惯业务流程的变化2.实现更好的业务过程操纵,提高顾客服务质量3.降低系统开发与保护成本工作流框架有:Jbpm、OSWorkflow、ActiveBPEL、YAWL等OA(办公自动化)要紧技术之一就是工作流。
1.2.开源工作流jBPM4.4介绍jBPM 即java Business Process Management,是基于java的业务流程管理系统。
jBPM是市面上相当流行的一款开源工作流引擎,引擎底层基于Active Diagram 模型。
jBPM4.4使用了hibernate(3.3.1版),因此能够很好的支持主流数据库。
jBPM4.4共有18张表。
2.准备jBPM4.4环境2.1.jBPM4.4所需环境2.2.下载有关资源2.3.安装流程设计器(GPD,Eclipse插件)GPD(Graphical Process Designer)是一个Eclipse插件。