流程定义的流程图可以被添加到部署中,该流程图将会持久化到 Activiti所使用的数据库中并且可以通过 Activiti 的 API 进行访问。该流程图也可以被用来在 Activiti Explorer 控制台中的流程中进行显示。 如果在我们的类路径下面有一个流程,org/activiti/expenseProcess.bpmn20.xml ,该流程定义有 一个流程 key 'expense'。 以下遵循流程定义图片的命名规范(按照这个特地顺序):
当使用编程式的部署方式:
repositoryService.createDeployment()
.name("expense-process.bar")
.addClasspathResource("org/activiti/expenseProcess.bpmn20.xml")
.addClasspathResource("org/activiti/expenseProcess.png")
.deploy();
接下来,可以通过 API 来获取流程定义图片资源:
ProcessDefinition processDefinition = repositoryService.createProcessDefinitionQuery()
.processDefinitionKey("expense")
.singleResult();
String diagramResourceName = processDefinition.getDiagramResourceName();
InputStream imageStream = repositoryService.getResourceAsStream(processDefinition.getDeploymentId(), diagramResourceName);