zoukankan      html  css  js  c++  java
  • activiti--bpmnmodel

    //实例化BpmnModel对象
    BpmnModel bpmnModel=new BpmnModel();
    //开始节点的属性
    StartEvent startEvent=new StartEvent();
    startEvent.setId("start1shareniu");
    startEvent.setName("start1shareniu");
    //普通的UserTask节点
    UserTask userTask=new UserTask();
    userTask.setId("userTask1shareniu");
    userTask.setName("userTask1shareniu");
    //结束节点属性
    EndEvent endEvent=new EndEvent();
    endEvent.setId("endEventshareniu");
    endEvent.setName("endEventshareniu");
    //连线信息
    List<SequenceFlow> sequenceFlows=new ArrayList<SequenceFlow>();
    List<SequenceFlow> toEnd=new ArrayList<SequenceFlow>();
    SequenceFlow s1=new SequenceFlow();
    s1.setId("starttouserTask");
    s1.setName("starttouserTask");
    s1.setSourceRef("start1shareniu");
    s1.setTargetRef("userTask1shareniu");
    sequenceFlows.add(s1);
    SequenceFlow s2=new SequenceFlow();
    s2.setId("userTasktoend");
    s2.setName("userTasktoend");
    s2.setSourceRef("userTask1shareniu");
    s2.setTargetRef("endEventshareniu");
    toEnd.add(s2);
    startEvent.setOutgoingFlows(sequenceFlows);
    userTask.setOutgoingFlows(toEnd);
    userTask.setIncomingFlows(sequenceFlows);
    endEvent.setIncomingFlows(toEnd);
    //Process对象
    Process process=new Process();
    process.setId("process1");
    process.addFlowElement(startEvent);
    process.addFlowElement(s1);
    process.addFlowElement(userTask);
    process.addFlowElement(s2);
    process.addFlowElement(endEvent);
    bpmnModel.addProcess(process);
    //BpmnModel转化xml
    
    //将上面的对象转化为标准的xml代码如下所示:
    
    //bpmnModel 转换为标准的bpmn xml文件
    
    BpmnXMLConverter bpmnXMLConverter=new BpmnXMLConverter();
    
    byte[] convertToXML = bpmnXMLConverter.convertToXML(bpmnModel);
    
    String bytes=new String(convertToXML);
    
    System.out.println(bytes);
    ProcessValidatorFactory processValidatorFactory=new ProcessValidatorFactory();
    
    ProcessValidator defaultProcessValidator = processValidatorFactory.createDefaultProcessValidator();
    
    //验证失败信息的封装ValidationError
    
    List<ValidationError> validate = defaultProcessValidator.validate(bpmnModel);
    
    System.out.println(validate.size());
    
    //需要说明的是:ValidationError封装的是验证信息,如果size为0说明,bpmnmodel正确,大于0,说明自定义的bpmnmodel是错误的,不可以使用的。
  • 相关阅读:
    删除顺序表L中下标为p(0<=p<=length-1)的元素,成功返回1,不成功返回0,并将删除元素的值赋给e
    设顺序表中的数据元素递增有序,试着写一算法,将x插入到顺序表上的适当位置上,以保持该表的有序性。
    数据结构-顺序表基本操作的实现(含全部代码)【转】
    【转】结构体指针
    结构体(第十四章 )
    线性表
    第二章 c语言概述
    时间复杂度
    软件质量与测试 黑盒测试
    软件质量保证与测试 基本内容
  • 原文地址:https://www.cnblogs.com/jentary/p/14005602.html
Copyright © 2011-2022 走看看