1,如:前台页面:流程管理->模型工作区菜单:
请求url:/workflow/model/list
web容器根据"/workflow/model/list"路径映射到DispatcherServlet(url-pattern为"/workflow/model/")进行处理

2,DispatcherServlet将"/workflow/model"路径映射到名字为"/workflow/model"的Bean进行处理,即ModelController,
package me.kafeitu.demo.activiti.web.workflow;

import java.io.ByteArrayInputStream;
import java.util.List;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import com.fasterxml.jackson.databind.JsonNode;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.fasterxml.jackson.databind.node.ObjectNode;
import org.activiti.bpmn.converter.BpmnXMLConverter;
import org.activiti.bpmn.model.BpmnModel;
import org.activiti.editor.constants.ModelDataJsonConstants;
import org.activiti.editor.language.json.converter.BpmnJsonConverter;
import org.activiti.engine.RepositoryService;
import org.activiti.engine.repository.Deployment;
import org.activiti.engine.repository.Model;
import org.apache.commons.io.IOUtils;
import org.apache.commons.lang3.StringUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.servlet.ModelAndView;
import org.springframework.web.servlet.mvc.support.RedirectAttributes;

/**
 * 流程模型控制器
 *
 * @author henryyan
 */
@Controller
@RequestMapping(value = "/workflow/model")
public class ModelController {

protected Logger logger = LoggerFactory.getLogger(getClass());

@Autowired
    RepositoryService repositoryService;

/**
     * 模型列表
     */
    @RequestMapping(value = "list")
    public ModelAndView modelList() {
        ModelAndView mav = new ModelAndView("workflow/model-list");
        List<Model> list = repositoryService.createModelQuery().list();
        mav.addObject("list", list);
        return mav;
    }

3,Model(ModelAndView的逻辑视图名)的list方法处理后,返回一个ModelAndView给DispatcherServlet,对应到具体页面/WEB-INF/views/workflow/model-list.jsp

4,Jst1View(/WEB-INF/views/workflow/model-list.jsp)将页面渲染,将传入的模型数据list在视图中展示出来;

5,返回控制权给DispatcherServlet,由DispatcherServlet返回响应给用户,完成一个请求;

咖啡兔流程执行逻辑分析相关推荐

  1. Activiti——流程执行历史记录(七)

    转自:http://blog.csdn.net/zjx86320/article/details/50363544 之前的几篇文章,为大家简单的介绍了部署流程定义.启动流程实例.查看和办理个人任务以及 ...

  2. camunda如何监控流程执行

    在 Camunda 中,可以使用 Camunda 提供的用户界面和 API 来监控流程的执行情况.以下是几种常用的监控流程执行的方式: 1.使用 Camunda Cockpit:Camunda Coc ...

  3. Activiti流程执行历史数据查询

    代码: HistoryQueryTest.java package com.ytdx.historyQuery;import java.util.List;import org.activiti.en ...

  4. Activiti基础教程--07流程执行历史记录(历史任务、历史流程实例、历史活动)

    相关代码参考gihub:https://github.com/changwensir/Activiti/tree/master/ActivitiDemo1 一.Activiti 历史任务查询 实际工作 ...

  5. Activiti——HelloWorld-模拟流程执行(三)

    1.流程图 [流程原图] [注释图]    2.部署流程定义 /*** 部署流程定义*/@Testpublic void deploymentProcessDefinition() {Deployme ...

  6. Python装饰器-装饰流程,执行顺序

    最近看到一个关于Flask的CTF(RealWorld CTF 2018 web题bookhub)文章 其中的一个trick是装饰器的顺序问题,就想写篇博客回顾下装饰器~ 首先强烈推荐很久之前看的一篇 ...

  7. camunda 流程执行追踪_九思OA项目管理解决方案:规范企业项目流程,掌握项目进展...

    项目管理可以对有限资源的有效计划.组织.控制,确保满足企业实设定的需求和期望.换句话说,项目管理可让企业发展始终处于"可控"状态,让管理者对企业发展"知进度.控成本.防风 ...

  8. camunda 流程执行追踪_流程引擎为什么选 Camunda

    2019 年初我在重新设计我们组负责的流程系统时,选择了 Camunda 流程引擎,并基于该流程引擎实现了一套适配方案.以前就想做一次总结,但总拖着. 最近公司中台在做流程引擎选型,相关同事找我了解 ...

  9. SKIL/工作流程/执行作业

    执行作业 作业是在后台对连接的SKIL资源运行的计算.作业可以有两种类型: 训练 推理 运行作业 完成将外部资源连接到skil之后,可以通过以下两种方式对其执行训练/推理作业. A. CLI B. R ...

最新文章

  1. 对象拷贝 Apache BeanUtils与Spring BeanUtils性能比较
  2. 用Jmeter制造软件测试数据
  3. idea ctrl+alt+t快捷键
  4. Map的4种遍历方法
  5. 你的创业余额还够么—网易阿里大咖带你领略大数据
  6. 非线性动力学_非线性动力学特辑 低维到高维的联通者
  7. phoenix创建索引报错“ Mutable secondary indexes must have the hbase.regionserver.wal.codec property”
  8. maven 打包部署时访问远程仓库中没有的jar
  9. PyTorch 1.0 中文文档:torch.hub
  10. Leetcode每日一题:49.group-anagrams(字母异位词分组)
  11. 机器学习(周志华)——决策树问题
  12. atom无法安装插件的解决方法之一
  13. Unity实现多语言切换
  14. 计算机书籍排版抓图要求,计算机录入与排版
  15. IC卡参数公钥之 AID和RID
  16. dfasdfad大发
  17. android怎么美化ui,安卓教程第一期最终篇(转)systemui.apk最全修改美化
  18. 大数据智慧交通项目【完整资料】
  19. L3-001 凑零钱 (30 分)
  20. 移植中文TTS(ekho)到ARM linux开发板

热门文章

  1. Rockchip 红外遥控开发指南
  2. art-pi lvgl添加触摸事件部分代码
  3. CentOS查看主板型号及硬件信息
  4. **阿里云ECS Linux服务器图形化界面安装方法 Ubuntu**
  5. Android内存管理优化建议
  6. Cause: java.sql.SQLExceptioValue ‘0000-00-00 00:00:00‘ can not be represented as java.sql.Timestamp
  7. e代理创始人兼CEO何文迪:中国财富管理行业正式进入“开放平台”阶段
  8. 记录小米设备事件获取
  9. Java8中字符串连接(join)收集器 Collectors.joining
  10. 两点顶点之间最短路径问题