工作流主要解决的主要问题是:为了实现某个业务目标,利用计算机在多个参与者之间按某种预定规则自动传递文档,信息或者任务。
activiti官方提供了一个示例工程activiti-explorer.war,运行这个工程可以体验activiti的基本功能,了解工作流的基本使用。
本文中使用的是activiti-5.22.0的官方包,
下载地址
<强>一、搭建开发环境强>
要运行示例工程,需要安装jdk8和tomcat。其jdk中需要jdk8或以上,tomcat我使用的是tomcat8,使用tomcat7时启动会报如下错误:
严重:异常发送上下文初始化类org.activiti.explorer.servlet.WebConfigurer的事件监听器实例 org.springframework.beans.factory。BeanCreationException:创建bean与错误的名字“demoDataConfiguration”:注入autowired的依赖关系失败;嵌套的异常org.springframework.beans.factory。BeanCreationException:不能自动装配领域:org.activiti.engine保护。IdentityService org.activiti.explorer.conf.DemoDataConfiguration.identityService;嵌套的异常org.springframework.beans.factory。BeanCreationException:创建bean与错误的名字[org/activiti/explorer/conf/ActivitiEngineConfiguration identityService的类路径中定义的资源。通过工厂方法类:Bean实例化失败;嵌套的异常org.springframework.beans。(org.activiti.engine BeanInstantiationException:实例化失败。IdentityService]:工厂方法的IdentityService扔例外;嵌套的异常org.springframework.beans.factory。BeanCreationException:创建bean与错误的名字[org/activiti/explorer/conf/ActivitiEngineConfiguration processEngine的类路径中定义的资源。通过工厂方法类:Bean实例化失败;嵌套的异常org.springframework.beans。(org.activiti.engine BeanInstantiationException:实例化失败。ProcessEngine]:工厂方法的ProcessEngine扔例外;嵌套的异常. lang。RuntimeException: org.springframework.beans.factory。BeanCreationException:创建bean与错误的名字“processEngineFactoryBean”: FactoryBean扔异常alt=" Activiti explorer.war示例工程使用过程图解">登录成功后,就可以在这个示例应用中体验activiti的基本功能。
<强>三,示例工程功能演示强>
这个工程分为了四个功能模块:任务,流程,报表、管理
下面我按照一般的使用流程来讲解下这几个功能模块
1。创建流程图
从工作流的定义,为了实现某个业务目标利用计算机在多个参与者之间按某种预定规则自动传递文档,信息或者任务。可以知道使用工作流前我们需要先定义一个规则,在这里的规则指的就是流程图。
进入流程管理模块,按如下菜单选则新建一个流程模型
流程,在流程设计工作区——在新建模型
然后在新的页面中绘制一个简单的请假流程并保存。绘制流程图时注意要在用户任务的属性中分配赋值为当前的登录人米,这样才能在代办中看到新的任务。
如下是新建好的请假流程
这样流程图就创建好了。
2。部署流程图
画好的流程图经过部署后才可以使用。在流程设计工作区选定刚才新建的流程,处理模型选择部署,完成流程的部署
3。启动流程
部署完成后就可以启动这个流程,创建任务。在“已部署流程定义”中选中刚部署的流程,点击“启动流程”就可以启动流程。流程启动后就会在“任务”模块的“代办任务”中出现一个新的任务“休假申请”,这就是我们在流程图中定义的第一个用户任务。
这里要注意如果在画流程图时没有指定用户任务的受让人属性,或者指定的不是当前登录人的id,这个任务就不会出现在登录人的代办任务中
4。完成任务
在任务模块对任务进行操作。在代办列表中找到刚才启动流程产生的那个任务,点击完成任务,流程就会走到下一个节点,并创建一个经理同意的任务,再完成这个任务,刚才开启的流程就结束了。
Activiti explorer.war示例工程使用过程图解