Activiti实战】的更多相关文章

(一)搭建开发环境 学习资料:<Activiti实战> 第一章 认识Activiti 2.1 下载Activiti 官网:http://activiti.org/download.html 入下载页后,可以看到最新版本的压缩包.快速入门.用户手册.javadoc等.我下载的时候,最新版本是activiti-5.22.0.zip. 目录结构: database: 包含了activiti表的创建.删除及版本升级三种类型的脚本. 创建和删除脚本的命名规则:activiti.[oracle|postg…
学习资料:<Activiti实战> 第一章 认识Activiti 内容概览:讲解activiti的特点.接口概览.架构等基本信息. 1.3 Activiti的特点 1.使用mybatis 2.原生支持spring,可以轻松集成spring 3.引擎的Service接口 Activiti引擎提供了7大Service接口,均通过processEngine获取,支持链式API风格. Service接口 作用 RepositoryService 流程仓库服务,管理流程仓库,比如部署.删除.读取流程资源…
学习资料:<Activiti实战> 第二十章 REST服务 20.1 通信协议概述 略. 20.2 REST API概述 资源分类 资源基础URI 说明 Deployments management 获取引擎信息.管理Job.查询引擎的数据库表等. Repository repository 部署.查询.删除流程定义,创建.获取模型等. Runtime runtime 管理运行时流程实例.任务.变量.事件.批注等. History history 管理历史流程实例.任务.变量.事件.批注等.…
学习资料:<Activiti实战> 第七章  Spring容器集成应用实例(五)普通表单 第六章中介绍了动态表单.外置表单.这里讲解第三种表单:普通表单. 普通表单的特点: 把表单内容写在表现层(JSP.JSF.HTML)文件中 一个用户任务对应一个页面 业务数据和流程数据分离 适用于业务相对固定但复杂.流程相对固定但表现层变化多的情况 因为普通表单中,业务数据和流程数据是分离的,所以存在统一事务管理的问题.要保证Activiti和业务数据操作在同一个事务中执行.前面集成Spring时的事务管…
学习资料:<Activiti实战> 第六章 任务表单(二)外置表单 6.3 外置表单 考虑到动态表单的缺点(见上节),外置表单使用的更多. 外置表单的特点: 页面的原样显示 字段值的自动填充 6.3.1 流程定义 (1)form文件 leave-start.form作为示例展示(字段要和后面代码中variables变量的key互相对应): <div class="control-group"> <label class="control-labe…
学习资料:<Activiti实战> 第六章 任务表单(一)动态表单 内容概览:本章要完成一个OA(协同办公系统)的请假流程的设计,从实用的角度,讲解如何将activiti与业务紧密相连. 第四章中讲解了两种表单:动态表单和外置表单的区别.这里将使用不同的表单来完成相同的功能. 动态表单:<activiti:formProperty> 外置表单:<activiti:formKey> 6.1 动态表单…
学习资料:<Activiti实战> 第五章 用户与组及部署管理(三)部署流程及资源读取 内容概览:如何利用API读取已经部署的资源,比如读取流程定义的XML文件,或流程对应的图片文件. 以下示例均基于SpringMVC. 5.3 部署流程及资源读取 5.3.1 读取已部署的processdefinition 假设现已有了一个页面,用于浏览及管理processDefinition.ID是流程定义id,DID是部署ID,名称是流程定义名称,KEY是流程定义KEY.XML和图片是流程定义的资源文件.…
学习资料:<Activiti实战> 第五章 用户与组及部署管理(二)部署流程资源 内容概览:讲解流程资源的读取与部署. 5.2 部署流程资源 5.2.1 流程资源 流程资源常用的有以下几种: 流程定义文件:拓展名为bpmn20.xml和bpmn 流程定义的图片:拓展名为PNG 表单文件:拓展名为form 规则文件:拓展名为drl 部署流程资源的时候,要注意一点: 引擎会根据不同的拓展名进行不同的处理.bpmn或bpmn20.xml类型的文件,会在ACT_RU_PROCDEF(流程定义表).AC…
学习资料:<Activiti实战> 第十三章 流量数据查询与跟踪 本章讲解运行时与历史数据的查询方法.主要包含三种:标准查询,Native查询,CustomSql查询. 13.1 Query API Activiti的查询API分为: 1 标准查询 以Java对象的方式,创建一个指定类型的Query对象,然后链式编程查询. 缺点:不支持复杂的查询. 2 Nativit查询 采用标准SQL的方式查询,因此支持复杂的查询. 缺点:仅支持部分对象的查询. (1)Query接口与NativeQuery…
学习资料:<Activiti实战> 第六章 任务表单 本章将一步步完成一个协同办公系统(OA)的请假流程的设计,讲解如何将Activiti和实际业务联系起来. 首先讲解动态表单与外置表单的区别,然后使用不同的表单完成相同的功能. 6.1 动态表单 (1)请假流程图…
学习资料:<Activiti实战> 第七章 Activiti与容器集成 本章讲解activiti-spring可以做的事情,如何与现有系统集成,包含bean的注入.统一事务管理等. 7.1 流程引擎工厂 7.1.1 ProcessEngine 创建processEngine的方法有三种: 通过配置文件 测试中通过ActivitiRule 通过ProcessEngines类 7.1.2 ProcessEngineFactory 与spring集成的目的有两个: 通过spring统一管理Proce…
学习资料:<Activiti实战> 第一章 搭建Activiti开发环境及简单示例 2.5 简单流程图及其执行过程 (1)leave.bpmn 后缀名必须是bpmn.安装了activiti的插件(eclipse:activiti designer,intellij:actiBPM)后,就可以用设计器的形式进行流程的绘制. 注意:在activiti部署的时候,必须同时存在leave.bpmn及leave.png.因此在eclipse设置:window—>preferences—>ac…
学习资料:<Activiti实战> 第一章 认识Activiti 2.1 下载Activiti 官网:http://activiti.org/download.html 进入下载页后,可以看到最新版本的压缩包.快速入门.用户手册.javadoc等.我下载的时候,最新版本是activiti-5.22.0.zip. 目录结构: database: 包含了activiti表的创建.删除及版本升级三种类型的脚本. 创建和删除脚本的命名规则:activiti.[oracle|postgres|db2|m…
学习资料:<Activiti实战> 第一章 认识Activiti 内容概览:讲解activiti的特点.接口概览.架构等基本信息. 1.3 Activiti的特点 1.使用mybatis 2.原生支持spring,可以轻松集成spring 3.引擎的Service接口 Activiti引擎提供了7大Service接口,均通过processEngine获取,支持链式API风格. Service接口 作用 RepositoryService 流程仓库服务,管理流程仓库,比如部署.删除.读取流程资源…
学习资料:<Activiti实战> 第五章 用户与组及部署管理(一)用户与组 内容概览:讲解activiti中内置的一套用户.组的关系,以及如何通过API添加.删除.查询. 5.1 用户与组 5.1.1 用户 public class IdentityServiceTest{ @Rule public ActivitiRule ar = new ActivitiRule();//使用默认的acitiviti.cfg.xml作为参数,当创建activitirule时,会自动创建引擎对象proce…
学习资料:<Activiti实战> 第十九章 统一身份管理 本章讲解如何统一业务系统与activiti的用户管理系统. 第5章的时候已经讲解过activiti的用户与组.一般来说业务系统都有自己的一套用户管理系统,同时维护两套用户系统不太划算.因此介绍几种用户数据同步的方案. 19.1 一套典型的身份系统 总共七张表.(但是代码里没找到建表 语句???) ID_USER ID_ROLE ID_RESOURCES ID_ORG ID_USER_ORG ID_USER_ROLE ID_ROLE_R…
说实话,接触Activiti已经是3年前的事情,那时候组里想做一个流程自动化的application,并且记录用户点击.做单量等.第一次听说Activiti,感觉挺好奇的,遂看了下相关的文档跟同事的代码,一个字 - 蒙...,文档组织太差且一堆特殊的约定,记得那个.form文件就把自己整的晕晕的..., 之后部门解散,也就搁置了对Activiti的深入研究,但是一直想弄明白它是怎么实现的,毕竟有很多地方在用Activiti做流程上的自动化. 一个月前,部门准备接个项目,把我拉上做下评估.项目背景…
在Activiti实战03_Hello World中我们介绍了一个中间没有任何任务的流程,实现了流程的部署与查阅,而在本章中,将会为流程添加任务节点,是流程能够像个流程,变得更加丰满起来. 在上一节的基础上,我门将会为流程添加实际业务使其能够正常工作起来,先模拟一个很简单的请假流程. 首先,在上一节的流程图中为流程添加一个用户任务(userTask)来处理申请,根据申请内容来决定运行申请还是驳回申请.流程图如下: 代码清单,由于篇幅的原因,这里就不在列出任务的坐标位置等信息 <?xml vers…
原文地址:http://blog.csdn.net/qq_30739519/article/details/51166062 1:工作流的概念   说明: 1) 假设:这两张图就是华谊兄弟的请假流程图  2) 图的组成部分:  A. 人物:范冰冰 冯小刚 王中军  B. 事件(动作):请假.批准.不批准     工作流(Workflow),就是"业务过程的部分或整体在计算机应用环境下的自动化",它主要解决的是"使在多个参与者之间按照某种预定义的规则传递文档.信息或任务的过程自…
目前Activiti默认支持的类型有String,long,enum,date,boolean,collection 要自定义字段类型,首先需要表单类型解析类 /** * @Author:LJ * @Description: activiti Javascript类型表单字段 * @Date: 2018/5/17 * @Modified By: */ public class JavascriptFormType extends AbstractFormType { /** * 把表单中的值转换…
Hello World如此经典,以至于几乎学习没一门新的技术都是从Hello World开始,可能意味着开启了新世界的大门吧,接下来就让我们一起步入到Activiti的世界中吧! 本文所使用开发环境 JDK1.8.Maven.Eclipse(Version: Neon Release (4.6.0)) 1:最简单的流程定义 1.1 Activiti项目创建 打开Eclipse -> File -> New -> Other -> 输入Activiti -> 选择Activit…
1:下载Activiti 访问:https://www.activiti.org/download-bpm 可以下载Activiti相关文档和历史版本压缩包,在 https://www.activiti.org/javadocs/6.latest/ 中可以查看Activiti的相关接口文档. 2:Javadocs 作为程序员都知道,官方的才是正宗的,才是唯一出处.javadocs就是开发人员和Activiti交流的“语言”.所以在Activiti的Javadocs中一共包含11个package…
什么是Activiti Activiti是为解决工作流而创建的一套流程引擎.举个最简单的例子,请假流程就是一个工作流,从开始到审批到结束,像流一样的贯穿整个流程.在工作中最常见的就是OA了.工作流总是以任务(Task)的形式驱动人处理业务或者驱动业务系统自动完成作业.有了工作流之后,作为流程中的一员,我们只需要关心自己在流程中的待办任务,而不用关心其他人的待办任务. 之所以称为Activiti是因为在流程中的每一个动作都可以称之为活动(Activity),也就是业务流程中的最小组成部分.多个活动…
流程图 13.2:部署流程定义+启动流程实例 13.3:查询我的个人任务 13.4:完成我的个人任务 说明: 1) 一个流程中流程实例只有1个,执行对象有多个 2)  并行网关的功能是基于进入和外出的顺序流的: 分支(fork): 并行后的所有外出顺序流,为每个顺序流都创建一个并发分支. 汇聚(join): 所有到达并行网关,在此等待的进入分支, 直到所有进入顺序流的分支都到达以后,流程就会通过汇聚网关. 3)  并行网关的进入和外出都是使用相同节点标识 4)  如果同一个并行网关有多个进入和多…
流程图 12.2:部署流程定义+启动流程实例 12.3:查询我的个人任务 12.4:完成我的个人任务 说明: 1)     一个排他网关对应一个以上的顺序流 2)     由排他网关流出的顺序流都有个conditionExpression元素,在内部维护返回boolean类型的决策结果. 3)     决策网关只会返回一条结果.当流程执行到排他网关时,流程引擎会自动检索网关出口,从上到下检索如果发现第一条决策结果为true或者没有设置条件的(默认为成立),则流出. 4)     如果没有任何一个…
11:连线 11.1:流程图 注意:如果将流程图放置在和java类相同的路径,需要配置: 11.2:部署流程定义+启动流程实例 11.3:查询我的个人任务 11.4:完成任务 说明: 1)使用流程变量,设置连线需要的流程变量的名称message,并设置流程变量的值 对应: 流程会按照指定的连线完成任务. 11.5:总结 1.一个活动中可以指定一个或多个SequenceFlow(Start中有一个,End中没有). * 开始活动中有一个SequenceFlow . * 结束活动中没有Sequenc…
前言 不管学习什么,都必须对知识体系中专有的名词或者特定的语言组织方式 有所了解. 本文仅记录学习过程中的笔记,参考意义因人而定,不保证所言全部正确. 学习方式,百度传课的视频<权威Activiti教程全集>,闫洪磊的<activiti实战> 工作流的生命周期 定义-> 发布 -> 执行 -> 监控 ->优化 ->定义…… Maven 中的引入 <dependency> <groupId>org.activiti</gro…
昨天有个网友加qq询问我有没有非maven搭建的activiti项目的demo,因为我博客中写了一个用maven,我当时没有,于是晚上回家尝试了一下,结果比较容易就实现了. 之后和那个网友聊了一下,他说自己没有任何activiti的基础,从0开始学.于是我便想到了几篇非常适合入门的activiti的博客,也在csdn中,并且我还转载了最开始的一篇. 博主的那一系列博文完全是从零开始,首先就是环境搭建以及eclip安装相关插件等,我个人觉得非常的适合完全没有activiti基础的人入门,因为当初我…
REST api可以访问了,如下 1.修改db.properties配置文件,让他访问sql server 2.在浏览器中输入如下地址,注意中间有一个service,这点和之前的不一样,在<Activiti实战>中给的地址是没有的,所以总是返回404错误码. 来自为知笔记(Wiz)…
这两天在评估jbpm和Activiti,需要安装一个Activiti Designer插件试用一下. 一.在线安装 从<Activiti实战>了解到可以通过如下方式安装 打开Eclipse -> Help -> Install New SoftWare-> Add 然后按照如下对话框输入: http://www.activiti.org/designer/update/ 后续下一步下一步即可,可能是我的网络状况不好,后续在从Activiti官网下载组件的时候总是提示失败,试了…