org.springframework.core.io.ContextResource#org.activiti.engine.repository.ProcessDefinition源码实例Demo

下面列出了org.springframework.core.io.ContextResource#org.activiti.engine.repository.ProcessDefinition 实例代码,或者点击链接到github查看源代码,也可以在右侧发表评论。

/**
 * 读取流程资源
 *
 * @param processDefinitionId 流程定义ID
 * @param resourceName        资源名称
 */
@RequestMapping(value = "/read-resource")
public void readResource(@RequestParam("pdid") String processDefinitionId,
                         @RequestParam("resourceName") String resourceName, HttpServletResponse response)
        throws Exception {
    ProcessDefinitionQuery pdq = repositoryService.createProcessDefinitionQuery();
    ProcessDefinition pd = pdq.processDefinitionId(processDefinitionId).singleResult();

    // 通过接口读取
    InputStream resourceAsStream = repositoryService.getResourceAsStream(pd.getDeploymentId(), resourceName);

    // 输出资源内容到相应对象
    byte[] b = new byte[1024];
    int len = -1;
    while ((len = resourceAsStream.read(b, 0, 1024)) != -1) {
        response.getOutputStream().write(b, 0, len);
    }
}
 
protected FormDefinition getStartForm(ProcessDefinition processDefinition) {
  FormDefinition formDefinition = null;
  BpmnModel bpmnModel = repositoryService.getBpmnModel(processDefinition.getId());
  Process process = bpmnModel.getProcessById(processDefinition.getKey());
  FlowElement startElement = process.getInitialFlowElement();
  if (startElement instanceof StartEvent) {
    StartEvent startEvent = (StartEvent) startElement;
    if (StringUtils.isNotEmpty(startEvent.getFormKey())) {
      formDefinition = formRepositoryService.getFormDefinitionByKeyAndParentDeploymentId(startEvent.getFormKey(), 
          processDefinition.getDeploymentId(), processDefinition.getTenantId());
    }
  }

  if (formDefinition == null) {
    // Definition found, but no form attached
    throw new NotFoundException("Process definition does not have a form defined: " + processDefinition.getId());
  }

  return formDefinition;
}
 
@Test
@Deployment(resources = {"chapter6/leave-formkey/leave-formkey.bpmn", "chapter6/leave-formkey/leave-start.form"})
public void allPass() throws Exception {

    ProcessDefinition processDefinition = repositoryService.createProcessDefinitionQuery().singleResult();

    // 读取启动表单
    Object renderedStartForm = formService.getRenderedStartForm(processDefinition.getId(), "myformengine");

    // 验证表单对象
    assertNotNull(renderedStartForm);
    assertTrue(renderedStartForm instanceof javax.swing.JButton);
    javax.swing.JButton button = (JButton) renderedStartForm;
    assertEquals("My Start Form Button", button.getName());

}
 
protected FormField getFormFieldFromRequest(String[] requestInfoArray, ProcessDefinition processDefinition, boolean isTableRequest) {
  FormDefinition form = getStartForm(processDefinition);
  int paramPosition = requestInfoArray.length - 1;
  if (isTableRequest) {
    paramPosition--;
  }
  String fieldVariable = requestInfoArray[paramPosition];

  List<? extends FormField> allFields = form.listAllFields();
  FormField selectedField = null;
  if (CollectionUtils.isNotEmpty(allFields)) {
    for (FormField formFieldRepresentation : allFields) {
      if (formFieldRepresentation.getId().equalsIgnoreCase(fieldVariable)) {
        selectedField = formFieldRepresentation;
      }
    }
  }

  if (selectedField == null) {
    throw new NotFoundException("Field could not be found in start form definition " + fieldVariable);
  }

  return selectedField;
}
 
源代码5 项目: my_curd   文件: OAController.java
/**
 * 根据流程定义 key 查询流程定义图
 */
public void definitionDiagramByKey() {
    String processKey = getPara("key");
    if (StringUtils.isEmpty(processKey)) {
        renderFail("Key 参数为空");
        return;
    }
    List<ProcessDefinition> definitions = ActivitiKit.getRepositoryService().createProcessDefinitionQuery()
            .processDefinitionKey(processKey)
            .orderByProcessDefinitionVersion().desc()
            .list();
    if (definitions.size() == 0) {
        renderFail("Key 参数错误");
        return;
    }
    InputStream in = ActivitiKit.getRepositoryService().getProcessDiagram(definitions.get(0).getId());
    render(new ImageRender().inputStream(in));
}
 
public ObjectNode execute(CommandContext commandContext) {
  if (processDefinitionId == null) {
    throw new ActivitiIllegalArgumentException("process definition id is null");
  }
  
  ObjectNode resultNode = null;
  DeploymentManager deploymentManager = commandContext.getProcessEngineConfiguration().getDeploymentManager();
  // make sure the process definition is in the cache
  ProcessDefinition processDefinition = deploymentManager.findDeployedProcessDefinitionById(processDefinitionId);
  if (Activiti5Util.isActiviti5ProcessDefinition(commandContext, processDefinition)) {
    Activiti5CompatibilityHandler activiti5CompatibilityHandler = Activiti5Util.getActiviti5CompatibilityHandler(); 
    return activiti5CompatibilityHandler.getProcessDefinitionInfo(processDefinitionId);
  }
  
  ProcessDefinitionInfoCacheObject definitionInfoCacheObject = deploymentManager.getProcessDefinitionInfoCache().get(processDefinitionId);
  if (definitionInfoCacheObject != null) {
    resultNode = definitionInfoCacheObject.getInfoNode();
  }
  
  return resultNode;
}
 
protected void localize(HistoricProcessInstance processInstance, CommandContext commandContext) {
  HistoricProcessInstanceEntity processInstanceEntity = (HistoricProcessInstanceEntity) processInstance;
  processInstanceEntity.setLocalizedName(null);
  processInstanceEntity.setLocalizedDescription(null);

  if (locale != null && processInstance.getProcessDefinitionId() != null) {
    ProcessDefinition processDefinition = commandContext.getProcessEngineConfiguration().getDeploymentManager().findDeployedProcessDefinitionById(processInstanceEntity.getProcessDefinitionId());
    ObjectNode languageNode = Context.getLocalizationElementProperties(locale, processDefinition.getKey(), 
        processInstanceEntity.getProcessDefinitionId(), withLocalizationFallback);
    
    if (languageNode != null) {
      JsonNode languageNameNode = languageNode.get(DynamicBpmnConstants.LOCALIZATION_NAME);
      if (languageNameNode != null && languageNameNode.isNull() == false) {
        processInstanceEntity.setLocalizedName(languageNameNode.asText());
      }

      JsonNode languageDescriptionNode = languageNode.get(DynamicBpmnConstants.LOCALIZATION_DESCRIPTION);
      if (languageDescriptionNode != null && languageDescriptionNode.isNull() == false) {
        processInstanceEntity.setLocalizedDescription(languageDescriptionNode.asText());
      }
    }
  }
}
 
protected void restoreSignalStartEvent(ProcessDefinition previousProcessDefinition, BpmnModel bpmnModel, StartEvent startEvent, EventDefinition eventDefinition) {
  SignalEventDefinition signalEventDefinition = (SignalEventDefinition) eventDefinition;
  SignalEventSubscriptionEntity subscriptionEntity = getEventSubscriptionEntityManager().createSignalEventSubscription();
  Signal signal = bpmnModel.getSignal(signalEventDefinition.getSignalRef());
  if (signal != null) {
    subscriptionEntity.setEventName(signal.getName());
  } else {
    subscriptionEntity.setEventName(signalEventDefinition.getSignalRef());
  }
  subscriptionEntity.setActivityId(startEvent.getId());
  subscriptionEntity.setProcessDefinitionId(previousProcessDefinition.getId());
  if (previousProcessDefinition.getTenantId() != null) {
    subscriptionEntity.setTenantId(previousProcessDefinition.getTenantId());
  }

  getEventSubscriptionEntityManager().insert(subscriptionEntity);
}
 
源代码9 项目: activiti6-boot2   文件: FormServiceTest.java
@Deployment(resources = { "org/activiti5/engine/test/api/oneTaskProcess.bpmn20.xml" })
public void testSubmitTaskFormData() {
  List<ProcessDefinition> processDefinitions = repositoryService.createProcessDefinitionQuery().list();
  assertEquals(1, processDefinitions.size());
  ProcessDefinition processDefinition = processDefinitions.get(0);
  
  ProcessInstance processInstance = runtimeService.startProcessInstanceByKey(processDefinition.getKey());
  assertNotNull(processInstance);
  
  Task task = taskService.createTaskQuery().processInstanceId(processInstance.getId()).singleResult();
  assertNotNull(task);
  
  Map<String, String> properties = new HashMap<String, String>();
  properties.put("room", "5b");
  
  formService.submitTaskFormData(task.getId(), properties);
  
  task = taskService.createTaskQuery().processInstanceId(processInstance.getId()).singleResult();
  assertNull(task);
  
}
 
/**
 * 查询已结束流程实例
 *
 * @param request
 * @return
 */
@RequestMapping(value = "finished/manager")
public ModelAndView finishedProcessInstanceListForManager(HttpServletRequest request) {
    ModelAndView mav = new ModelAndView("chapter13/finished-process-manager");
    Page<HistoricProcessInstance> page = new Page<HistoricProcessInstance>(PageUtil.PAGE_SIZE);
    int[] pageParams = PageUtil.init(page, request);
    HistoricProcessInstanceQuery historicProcessInstanceQuery = historyService.createHistoricProcessInstanceQuery().finished();
    List<HistoricProcessInstance> historicProcessInstances = historicProcessInstanceQuery.listPage(pageParams[0], pageParams[1]);

    // 查询流程定义对象
    Map<String, ProcessDefinition> definitionMap = new HashMap<String, ProcessDefinition>();

    for (HistoricProcessInstance historicProcessInstance : historicProcessInstances) {
        definitionCache(definitionMap, historicProcessInstance.getProcessDefinitionId());
    }

    page.setResult(historicProcessInstances);
    page.setTotalCount(historicProcessInstanceQuery.count());
    mav.addObject("page", page);
    mav.addObject("definitions", definitionMap);

    return mav;
}
 
/**
 * 读取流程资源
 *
 * @param processDefinitionId 流程定义ID
 * @param resourceName        资源名称
 */
@RequestMapping(value = "/read-resource")
public void readResource(@RequestParam("pdid") String processDefinitionId, @RequestParam("resourceName") String resourceName, HttpServletResponse response)
        throws Exception {
    ProcessDefinitionQuery pdq = repositoryService.createProcessDefinitionQuery();
    ProcessDefinition pd = pdq.processDefinitionId(processDefinitionId).singleResult();

    // 通过接口读取
    InputStream resourceAsStream = repositoryService.getResourceAsStream(pd.getDeploymentId(), resourceName);

    // 输出资源内容到相应对象
    byte[] b = new byte[1024];
    int len = -1;
    while ((len = resourceAsStream.read(b, 0, 1024)) != -1) {
        response.getOutputStream().write(b, 0, len);
    }
}
 
源代码12 项目: activiti6-boot2   文件: TerminateEndEventTest.java
public void testParseTerminateEndEventDefinitionWithExtensions() {
  org.activiti.engine.repository.Deployment deployment = repositoryService.createDeployment().addClasspathResource("org/activiti/engine/test/bpmn/event/end/TerminateEndEventTest.parseExtensionElements.bpmn20.xml").deploy();
  ProcessDefinition processDefinitionQuery = repositoryService.createProcessDefinitionQuery().deploymentId(deployment.getId()).singleResult();
  BpmnModel bpmnModel = this.processEngineConfiguration.getProcessDefinitionCache()
      .get(processDefinitionQuery.getId()).getBpmnModel();

  Map<String, List<ExtensionElement>> extensionElements = bpmnModel.getProcesses().get(0)
      .findFlowElementsOfType(EndEvent.class).get(0).getExtensionElements();
  assertThat(extensionElements.size(), is(1));
  List<ExtensionElement> strangeProperties = extensionElements.get("strangeProperty");
  assertThat(strangeProperties.size(), is(1));
  ExtensionElement strangeProperty = strangeProperties.get(0);
  assertThat(strangeProperty.getNamespace(), is("http://activiti.org/bpmn"));
  assertThat(strangeProperty.getElementText(), is("value"));
  assertThat(strangeProperty.getAttributes().size(), is(1));
  ExtensionAttribute id = strangeProperty.getAttributes().get("id").get(0);
  assertThat(id.getName(), is("id"));
  assertThat(id.getValue(), is("strangeId"));


  repositoryService.deleteDeployment(deployment.getId());
}
 
public InputStream execute(CommandContext commandContext) {
  ProcessDefinition processDefinition = commandContext
          .getProcessEngineConfiguration()
          .getDeploymentManager()
          .findDeployedProcessDefinitionById(processDefinitionId);
  String deploymentId = processDefinition.getDeploymentId();
  String resourceName = processDefinition.getDiagramResourceName();
  if (resourceName == null ) {
    log.info("Resource name is null! No process diagram stream exists.");
    return null;
  } else {
    InputStream processDiagramStream =
            new GetDeploymentResourceCmd(deploymentId, resourceName)
            .execute(commandContext);
    return processDiagramStream;
  }
}
 
/**
 * 读取流程资源
 *
 * @param processDefinitionId 流程定义ID
 * @param resourceName        资源名称
 */
@RequestMapping(value = "/read-resource")
public void readResource(@RequestParam("pdid") String processDefinitionId,
                         @RequestParam("resourceName") String resourceName, HttpServletResponse response)
        throws Exception {
    ProcessDefinitionQuery pdq = repositoryService.createProcessDefinitionQuery();
    ProcessDefinition pd = pdq.processDefinitionId(processDefinitionId).singleResult();

    // 通过接口读取
    InputStream resourceAsStream = repositoryService.getResourceAsStream(pd.getDeploymentId(), resourceName);

    // 输出资源内容到相应对象
    byte[] b = new byte[1024];
    int len;
    while ((len = resourceAsStream.read(b, 0, 1024)) != -1) {
        response.getOutputStream().write(b, 0, len);
    }
}
 
源代码15 项目: activiti6-boot2   文件: BusinessProcess.java
@Deprecated
public ProcessInstance startProcessByName(String string) {

  if (Context.getCommandContext() != null) {
    throw new ActivitiCdiException("Cannot use startProcessByName in an activiti command.");
  }

  ProcessDefinition definition = processEngine.getRepositoryService().createProcessDefinitionQuery().processDefinitionName(string).singleResult();
  if (definition == null) {
    throw new ActivitiObjectNotFoundException("No process definition found for name: " + string, ProcessDefinition.class);
  }
  ProcessInstance instance = processEngine.getRuntimeService().startProcessInstanceById(definition.getId(), getAndClearCachedVariables());
  if (!instance.isEnded()) {
    setExecution(instance);
  }
  return instance;
}
 
/**
 * 读取启动流程的表单字段
 */
@RequestMapping(value = "getform/start/{processDefinitionId}")
public ModelAndView readStartForm(@PathVariable("processDefinitionId") String processDefinitionId) throws Exception {
    ProcessDefinition processDefinition = repositoryService.createProcessDefinitionQuery().processDefinitionId(processDefinitionId).singleResult();
    boolean hasStartFormKey = processDefinition.hasStartFormKey();

    // 根据是否有formkey属性判断使用哪个展示层
    String viewName = "chapter6/start-process-form";
    ModelAndView mav = new ModelAndView(viewName);

    // 判断是否有formkey属性
    if (hasStartFormKey) {
        Object renderedStartForm = formService.getRenderedStartForm(processDefinitionId);
        mav.addObject("startFormData", renderedStartForm);
        mav.addObject("processDefinition", processDefinition);
    } else { // 动态表单字段
        StartFormData startFormData = formService.getStartFormData(processDefinitionId);
        mav.addObject("startFormData", startFormData);
    }
    mav.addObject("hasStartFormKey", hasStartFormKey);
    mav.addObject("processDefinitionId", processDefinitionId);
    return mav;
}
 
@RequestMapping(value="/processlist",method={RequestMethod.POST,RequestMethod.GET})
public ModelAndView processlist(HttpServletRequest request, HttpServletResponse response){
	
	ModelAndView modelAndView=new ModelAndView("workflow/processlist");
	
	/*
	 * 保存两个对象,一个是ProcessDefinition(流程定义),一个是Deployment(流程部署)
	 */
	List<Object[]> objects = new ArrayList<Object[]>();
	
	List<ProcessDefinition> list = repositoryService.createProcessDefinitionQuery().list();
	for (ProcessDefinition processDefinition : list) {
		String deploymentId = processDefinition.getDeploymentId();
		Deployment deployment = repositoryService.createDeploymentQuery().deploymentId(deploymentId).singleResult();
		objects.add(new Object[]{processDefinition,deployment});
	}
	modelAndView.addObject("objects",objects);
	return modelAndView;
}
 
@Test
@Deployment(resources = {"chapter6/leave-formkey/leave-formkey.bpmn", "chapter6/leave-formkey/leave-start.form"})
public void allPass() throws Exception {

    ProcessDefinition processDefinition = repositoryService.createProcessDefinitionQuery().singleResult();

    // 读取启动表单
    Object renderedStartForm = formService.getRenderedStartForm(processDefinition.getId(), "myformengine");

    // 验证表单对象
    assertNotNull(renderedStartForm);
    assertTrue(renderedStartForm instanceof javax.swing.JButton);
    javax.swing.JButton button = (JButton) renderedStartForm;
    assertEquals("My Start Form Button", button.getName());

}
 
源代码19 项目: activiti6-boot2   文件: BusinessProcess.java
@Deprecated
public ProcessInstance startProcessByName(String string, Map<String, Object> variables) {

  if (Context.getCommandContext() != null) {
    throw new ActivitiCdiException("Cannot use startProcessByName in an activiti command.");
  }

  ProcessDefinition definition = processEngine.getRepositoryService().createProcessDefinitionQuery().processDefinitionName(string).singleResult();
  if (definition == null) {
    throw new ActivitiObjectNotFoundException("No process definition found for name: " + string, ProcessDefinition.class);
  }
  Map<String, Object> cachedVariables = getAndClearCachedVariables();
  cachedVariables.putAll(variables);
  ProcessInstance instance = processEngine.getRuntimeService().startProcessInstanceById(definition.getId(), cachedVariables);
  if (!instance.isEnded()) {
    setExecution(instance);
  }
  return instance;
}
 
源代码20 项目: Shop-for-JavaWeb   文件: ActProcessService.java
/**
 * 流程定义列表
 */
public Page<Object[]> processList(Page<Object[]> page, String category) {

    ProcessDefinitionQuery processDefinitionQuery = repositoryService.createProcessDefinitionQuery()
    		.latestVersion().orderByProcessDefinitionKey().asc();
    
    if (StringUtils.isNotEmpty(category)){
    	processDefinitionQuery.processDefinitionCategory(category);
	}
    
    page.setCount(processDefinitionQuery.count());
    
    List<ProcessDefinition> processDefinitionList = processDefinitionQuery.listPage(page.getFirstResult(), page.getMaxResults());
    for (ProcessDefinition processDefinition : processDefinitionList) {
      String deploymentId = processDefinition.getDeploymentId();
      Deployment deployment = repositoryService.createDeploymentQuery().deploymentId(deploymentId).singleResult();
      page.getList().add(new Object[]{processDefinition, deployment});
    }

	return page;
}
 
源代码21 项目: activiti-demo   文件: SimpleFlowWorkController.java
/**
     * 查看流程定义图
     * @param request
     * @param processDefId 流程定义id
     * @return
     */
    @RequestMapping(value = "/viewprocessDefImage.do")
    public String viewprocessDefImage(HttpServletRequest request,
    							 HttpServletResponse response,	
                         @RequestParam("processDefId") String processDefId) throws Exception{
    	//根据流程定义id查询流程定义
        ProcessDefinition processDefinition = repositoryService.createProcessDefinitionQuery().processDefinitionId(processDefId).singleResult();
        
        InputStream inputStream = repositoryService.getResourceAsStream(processDefinition.getDeploymentId(), processDefinition.getDiagramResourceName());
        
//        // 输出资源内容到相应对象
//        byte[] b = new byte[1024];
//        int len;
//        while ((len = inputStream.read(b, 0, 1024)) != -1) {
//        	response.getOutputStream().write(b, 0, len);
//        }
        
        response.getOutputStream().write(IoUtil.readInputStream(inputStream, "processDefInputStream"));
        
        return null;
    }
 
@Test
@Deployment(resources = {"chapter6/leave-formkey/leave-formkey.bpmn", "chapter6/leave-formkey/leave-start.form"})
public void allPass() throws Exception {

    ProcessDefinition processDefinition = repositoryService.createProcessDefinitionQuery().singleResult();

    // 读取启动表单
    Object renderedStartForm = formService.getRenderedStartForm(processDefinition.getId(), "myformengine");

    // 验证表单对象
    assertNotNull(renderedStartForm);
    assertTrue(renderedStartForm instanceof javax.swing.JButton);
    javax.swing.JButton button = (JButton) renderedStartForm;
    assertEquals("My Start Form Button", button.getName());

}
 
public static void main(String[] args) throws Exception {
	// 创建流程引擎
	ProcessEngine engine = ProcessEngines.getDefaultProcessEngine();
	// 得到流程存储服务对象
	RepositoryService repositoryService = engine.getRepositoryService();
	// 部署一份流程文件与相应的流程图文件
	Deployment dep = repositoryService.createDeployment()
			.addClasspathResource("MyFirstProcess.bpmn").deploy();
	// 查询流程定义
	ProcessDefinition def = repositoryService
			.createProcessDefinitionQuery().deploymentId(dep.getId())
			.singleResult();
	// 查询资源文件
	InputStream is = repositoryService.getProcessDiagram(def.getId());
	// 将输入流转换为图片对象
	BufferedImage image = ImageIO.read(is);
	// 保存为图片文件
	File file = new File("resources/result.png");
	if (!file.exists()) {
		file.createNewFile();
	}
	FileOutputStream fos = new FileOutputStream(file);
	ImageIO.write(image, "png", fos);
	fos.close();
	is.close();
	// 关闭流程引擎
	engine.close();
}
 
@Test
@Deployment(resources = "chapter6/dynamic-form/leave.bpmn")
public void testJavascriptFormType() throws Exception {

    // 验证是否部署成功
    long count = repositoryService.createProcessDefinitionQuery().count();
    assertEquals(1, count);

    ProcessDefinition processDefinition = repositoryService.createProcessDefinitionQuery().processDefinitionKey("leave").singleResult();
    StartFormData startFormData = formService.getStartFormData(processDefinition.getId());
    List<FormProperty> formProperties = startFormData.getFormProperties();
    for (FormProperty formProperty : formProperties) {
        System.out.println(formProperty.getId() + ",value=" + formProperty.getValue());
    }
}
 
protected List<ProcessInstance> fetchProcessInstancesPage(CommandContext commandContext, ProcessDefinition processDefinition, int currentPageStartIndex) {

    if (SuspensionState.ACTIVE.equals(getProcessDefinitionSuspensionState())) {
      return new ProcessInstanceQueryImpl(commandContext).processDefinitionId(processDefinition.getId()).suspended()
          .listPage(currentPageStartIndex, commandContext.getProcessEngineConfiguration().getBatchSizeProcessInstances());
    } else {
      return new ProcessInstanceQueryImpl(commandContext).processDefinitionId(processDefinition.getId()).active()
          .listPage(currentPageStartIndex, commandContext.getProcessEngineConfiguration().getBatchSizeProcessInstances());
    }
  }
 
@Override
public ProcessDefinition findProcessDefinitionByKeyAndVersionAndTenantId(String processDefinitionKey, Integer processDefinitionVersion, String tenantId) {
  if (tenantId == null || ProcessEngineConfiguration.NO_TENANT_ID.equals(tenantId)) {
    return processDefinitionDataManager.findProcessDefinitionByKeyAndVersion(processDefinitionKey, processDefinitionVersion);
  } else {
    return processDefinitionDataManager.findProcessDefinitionByKeyAndVersionAndTenantId(processDefinitionKey, processDefinitionVersion, tenantId);
  }
}
 
@Override
protected void initializeServices() {
  super.initializeServices();

  listener = new TestMultipleActivitiEventListener();
  listener.setEventClasses(ActivitiEntityEvent.class);
  listener.setEntityClasses(ProcessDefinition.class, TimerJobEntity.class);

  processEngineConfiguration.getEventDispatcher().addEventListener(listener);
}
 
protected void removeRelatedJobs(ProcessDefinition processDefinition) {
  List<JobEntity> timerJobs = getJobEntityManager()
          .findJobsByProcessDefinitionId(processDefinition.getId());
  if (timerJobs != null && timerJobs.size() > 0) {
    for (JobEntity timerJob : timerJobs) {
      if (getEventDispatcher().isEnabled()) {
        getEventDispatcher().dispatchEvent(ActivitiEventBuilder.createEntityEvent(ActivitiEventType.JOB_CANCELED, timerJob, null, null, processDefinition.getId()));
      }

      getJobEntityManager().delete(timerJob);
    }
  }
}
 
public InputStream execute(CommandContext commandContext) {
  ProcessDefinition processDefinition = commandContext.getProcessEngineConfiguration().getDeploymentManager().findDeployedProcessDefinitionById(processDefinitionId);
  String deploymentId = processDefinition.getDeploymentId();
  String resourceName = processDefinition.getResourceName();
  InputStream processModelStream = new GetDeploymentResourceCmd(deploymentId, resourceName).execute(commandContext);
  return processModelStream;
}
 
源代码30 项目: activiti6-boot2   文件: FormServiceTest.java
@Deployment(resources = { "org/activiti5/engine/test/api/oneTaskProcess.bpmn20.xml" })
public void testGetStartFormByProcessDefinitionIdWithoutStartform() {
  List<ProcessDefinition> processDefinitions = repositoryService.createProcessDefinitionQuery().list();
  assertEquals(1, processDefinitions.size());
  ProcessDefinition processDefinition = processDefinitions.get(0);

  Object startForm = formService.getRenderedStartForm(processDefinition.getId());
  assertNull(startForm);
}