JEECG pom

bean id="processEngineConfiguration" class="org.activiti.spring.SpringProcessEngineConfiguration">  
        <property name="dataSource" ref="dataSource" />  
        <property name="transactionManager" ref="txManager" />  
        <property name="databaseSchemaUpdate" value="true" />  
      
        <property name="jobExecutorActivate" value="false" />  
        <!-- 使用spring的自动资源加载部署方式部署 -->  
        <property name="deploymentResources" value="classpath*:design/*.*" />  
    </bean>  
  
    <bean id="processEngine" class="org.activiti.spring.ProcessEngineFactoryBean">  
        <property name="processEngineConfiguration" ref="processEngineConfiguration" />  
    </bean> 
<span style="white-space:pre">	</span>
<span style="white-space:pre">	</span> <bean id="identityService" factory-bean="processEngine"  
        factory-method="getIdentityService" />  
    <bean id="formService" factory-bean="processEngine"  
        factory-method="getFormService" />  
    <bean id="repositoryService" factory-bean="processEngine"  
        factory-method="getRepositoryService" />  
    <bean id="runtimeService" factory-bean="processEngine"  
        factory-method="getRuntimeService" />  
    <bean id="taskService" factory-bean="processEngine"  
        factory-method="getTaskService" />  
    <bean id="historyService" factory-bean="processEngine"  
        factory-method="getHistoryService" />  
    <bean id="managementService" factory-bean="processEngine"  
        factory-method="getManagementService" />  





package com.framework.controller;


import java.util.List;


import org.activiti.engine.*; 
import org.activiti.engine.task.Task;
import org.junit.Test;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;


import com.framework.service.UserService;




@Controller
@RequestMapping("/first")
<span style="white-space:pre">	</span>public class FirstController {


<span style="white-space:pre">	</span>    @Autowired
<span style="white-space:pre">	</span>    RepositoryService repositoryService;
<span style="white-space:pre">	</span>    @Autowired
<span style="white-space:pre">	</span>    RuntimeService runtimeService;
<span style="white-space:pre">	</span>    @Autowired
<span style="white-space:pre">	</span>    TaskService taskService;
<span style="white-space:pre">	</span>    
<span style="white-space:pre">	</span>    @Autowired
<span style="white-space:pre">	</span>    UserService taskSesrvice;
<span style="white-space:pre">	</span>    @RequestMapping("/test1")
<span style="white-space:pre">	</span>    @ResponseBody
<span style="white-space:pre">	</span>
<span style="white-space:pre">	</span>    public String test(){
<span style="white-space:pre">	</span>        // 加载配置文件activiti.cfg.xml,创建引擎,如果出现null,可能原因
<span style="white-space:pre">	</span>        //1.加载路径不是根目录。
<span style="white-space:pre">	</span>        //2.依赖包不完全
<span style="white-space:pre">	</span>        // 获取配置文件后,引擎开始创建数据库。
<span style="white-space:pre">	</span>        ProcessEngine engine = ProcessEngines.getDefaultProcessEngine();
<span style="white-space:pre">	</span>        // 获取流程储存服务组件
<span style="white-space:pre">	</span>        RepositoryService rs = engine.getRepositoryService();
<span style="white-space:pre">	</span>        // 获取运行时服务组件
<span style="white-space:pre">	</span>        RuntimeService rse = engine.getRuntimeService();
<span style="white-space:pre">	</span>        // 获取流程中的任务TASK组件
<span style="white-space:pre">	</span>        TaskService ts = engine.getTaskService();
<span style="white-space:pre">	</span>        // 部署流程,只要是符合BPMN2规范的XML文件,理论上都可以被ACTIVITI部署
<span style="white-space:pre">	</span>        rs.createDeployment().addClasspathResource("design/MyProcess.bpmn").deploy();
<span style="white-space:pre">	</span>        // 开启流程,myprocess是流程的ID
<span style="white-space:pre">	</span>        rse.startProcessInstanceByKey("myProcess");
<span style="white-space:pre">	</span>        // 查询历史表中的Task
<span style="white-space:pre">	</span>        List<Task> task = ts.createTaskQuery().list();
<span style="white-space:pre">	</span>        Task task1 = task.get(task.size()-1);
<span style="white-space:pre">	</span>        System.out.println("第一环节:"+task1);
<span style="white-space:pre">	</span>        System.out.println("推动流程到下一环节:"+task1);
<span style="white-space:pre">	</span>        ts.complete(task1.getId());
<span style="white-space:pre">	</span>        task1 = ts.createTaskQuery().executionId(task1.getExecutionId()).singleResult();
<span style="white-space:pre">	</span>        System.out.println("第二环节:" + task1);
<span style="white-space:pre">	</span>        return "测试成功";
<span style="white-space:pre">	</span>    }


<span style="white-space:pre">	</span>
<span style="white-space:pre">	</span>    @RequestMapping("/test2")
 
<span style="white-space:pre">	</span>    public String test2(){
<span style="white-space:pre">	</span>        StringBuffer sb = new StringBuffer();
<span style="white-space:pre">	</span>        // 部署流程,只要是符合BPMN2规范的XML文件,理论上都可以被ACTIVITI部署
<span style="white-space:pre">	</span>        repositoryService.createDeployment().addClasspathResource("com/pzr/demo2/diagrams/MyProcess.bpmn").deploy();
<span style="white-space:pre">	</span>        // 开启流程,myprocess是流程的ID
<span style="white-space:pre">	</span>        runtimeService.startProcessInstanceByKey("myProcess");
<span style="white-space:pre">	</span>        // 查询历史表中的Task
<span style="white-space:pre">	</span>        List<Task> task = taskService.createTaskQuery().list();
<span style="white-space:pre">	</span>        Task task1 = task.get(task.size()-1);
<span style="white-space:pre">	</span>        sb.append("第一环节:"+task1 +"<br/>");
<span style="white-space:pre">	</span>        sb.append("推动流程到下一环节:"+task1+"<br/>");
<span style="white-space:pre">	</span>        taskService.complete(task1.getId());
<span style="white-space:pre">	</span>        task1 = taskService.createTaskQuery().executionId(task1.getExecutionId()).singleResult();
<span style="white-space:pre">	</span>        sb.append("第二环节:" + task1+"<br/>");
<span style="white-space:pre">	</span>        return sb.toString();
<span style="white-space:pre">	</span>    }<span style="white-space:pre">	</span>
<span style="white-space:pre">	</span>    
<span style="white-space:pre">	</span> 
  
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值