Activiti Modeler 5.22.0整合到Spring项目

一、引言
这编文章主要目的是:Activiti Modeler5.22.0整合到Spring项目。

Activiti Modeler 离不开spring,因此我们需要创建一个简单的spring项目。这个项目的名为:bamboo-activiti,bamboo-activiti项目简单实现了springmvc跳转的hello world界面。

bamboo-activiti下面下载如下。

bamboo-activiti项目

下载:http://pan.baidu.com/s/1pL8st4Z

Spring版本:4.15(因为在Activiti 5.22.0中用到4.15版本,所以也选择此版本)

Spring默认配置文件applicationMVC.xml:applicationContext.xml(在此配置文件中,我们配置数据源和事务处理器和导入SpringMVC配置文件)

配置applicationMVC.xml:此配置文件主要配置SpringMVC的扫描注解和页面去向

二、将Activiti Modeler5.22.0整合到bamboo-activiti项目中

整合需要的资源如下:

1.官方下载Activiti 源代码: https://github.com/Activiti/Activiti ,云盘下载:http://pan.baidu.com/s/1geVZaoz,如下:


2.下载Activiti 5.22.0:http://pan.baidu.com/s/1eRWHaBw (我已经下载好了的)。官网下载地址:https://www.activiti.org/ 


1、解压Activiti-master.zip,找到modules\activiti-webapp-explorer2\src\main\webapp下的diagram-viewer、editor-app、modeler.html,将其加到bamboo-activiti项目的webapp中。(这一步主要是Activiti Modeler的前段页面)

2、解压activiti-5.22.0.zip,找到wars在的activiti-explorer.war,将其放在tomcat的webapps下,启动tomcat将其解压,找activiti-explorer\WEB-INF\lib,拷贝所有jar包到bamboo-activiti的lib下。

3、给Activiti Modeler做配置文件applicationActiviti.xml:在并bamboo-activiti项目中添加名为,applicationActiviti.xml的配置文件,并在applicationContext.xml中引入import,


在Activiti-master中找到stencilset.json文件加到bamboo-activiti项目的配置文件里面。

applicationActiviti.xml的主要配置如下:


     

4、在Activiti 5.22.0的libs中找到activiti-modeler-5.22.0-sources.jar,将其解压,可以看到如下:

 , 

在bamboo-activiti项目中创建包名为:com.rest.editor,将上图3个类加到其中,如下图示:

Activiti Modeler 5.22.0整合到Spring项目_第1张图片

回看第3步applicationActiviti.xml配置所指向的路径就是这3个类,这3个类就是Activiti Modeler的后台配置类。

5、在editor-app中找到app-cfg.js文件,将'contextRoot' : '/activiti-explorer/service',修改为本项目的路径。如下:


6,编写Activiti Modeler 页面跳转代码,如下:

 /**
     * 创建模型
     */
    @RequestMapping("create")
    public void create(HttpServletRequest request, HttpServletResponse response) {
        try {
        	ProcessEngine processEngine = ProcessEngines.getDefaultProcessEngine();
        	 
        	RepositoryService repositoryService = processEngine.getRepositoryService();
        	 
            ObjectMapper objectMapper = new ObjectMapper();
            ObjectNode editorNode = objectMapper.createObjectNode();
            editorNode.put("id", "canvas");
            editorNode.put("resourceId", "canvas");
            ObjectNode stencilSetNode = objectMapper.createObjectNode();
            stencilSetNode.put("namespace", "http://b3mn.org/stencilset/bpmn2.0#");
            editorNode.put("stencilset", stencilSetNode);
            Model modelData = repositoryService.newModel();

            ObjectNode modelObjectNode = objectMapper.createObjectNode();
            modelObjectNode.put(ModelDataJsonConstants.MODEL_NAME, "hello1111");
            modelObjectNode.put(ModelDataJsonConstants.MODEL_REVISION, 1);
            String description = "hello1111";
            modelObjectNode.put(ModelDataJsonConstants.MODEL_DESCRIPTION, description);
            modelData.setMetaInfo(modelObjectNode.toString());
            modelData.setName("hello1111");
            modelData.setKey("12313123");

            //保存模型
            repositoryService.saveModel(modelData);
            repositoryService.addModelEditorSource(modelData.getId(), editorNode.toString().getBytes("utf-8"));
            response.sendRedirect(request.getContextPath() + "/modeler.html?modelId=" + modelData.getId());
        } catch (Exception e) {
            System.out.println("创建模型失败:");
        }
    }
7,修改index.jsp,添加链接
activiti-modele-index

注意:右键属性,将下图:

Activiti Modeler 5.22.0整合到Spring项目_第2张图片

Activiti Modeler 5.22.0整合到Spring项目_第3张图片

8、别忘了Activiti 5.22.0数据库,在Activiti 5.22.0.zip中。

三、整合项目bamboo-activiti

1)整合中文版下载:http://pan.baidu.com/s/1miHRTPY

浏览器访问:http://localhost:8080/bamboo-activiti/

首页

Activiti Modeler 5.22.0整合到Spring项目_第4张图片

activiti-modele

Activiti Modeler 5.22.0整合到Spring项目_第5张图片


2)整合英文版下载:http://pan.baidu.com/s/1eS8AIoa

首页:

Activiti Modeler 5.22.0整合到Spring项目_第6张图片

Activiti Modeler 5.22.0整合到Spring项目_第7张图片

四、Activiti-5.16资料下载
Activiti Modeler 5.22.0整合到Spring项目_第8张图片

下载地址:http://pan.baidu.com/s/1miHlZBy


五、Activiti5.22.0
Activiti5.22.0开发指南.pdf 目前只有数据库


你可能感兴趣的:(JAVA,EE,Activiti)