2015-10-04 53 views
1

我正在使用Spring Boot,我試圖部署一個非常簡單的進程。Activiti進程沒有與Spring Boot一起部署

我試圖將過程定義放在的文件夾src/main/resources中。不知道是否有效,我還嘗試手動部署流程定義。

的過程是:

<?xml version="1.0" encoding="UTF-8"?> 
<definitions 
     xmlns="http://www.omg.org/spec/BPMN/20100524/MODEL" 
     xmlns:activiti="http://activiti.org/bpmn" 
     targetNamespace="MyProcessesNamespace"> 

    <process id="oneTaskProcess" name="The One Task Process" isExecutable="true"> 
     <startEvent id="theStart" /> 
     <sequenceFlow id="flow1" sourceRef="theStart" targetRef="theTask" /> 
     <userTask id="theTask" name="my task" /> 
     <sequenceFlow id="flow2" sourceRef="theTask" targetRef="theEnd" /> 
     <endEvent id="theEnd" /> 
    </process> 

</definitions> 

的代碼我使用手動部署是:

DeploymentBuilder db = repositoryService.createDeployment(). 
       name("Deployment name"); 

     Resource processesResource = resourceLoader.getResource("classpath:processes"); 
     File processesFolder = processesResource.getFile(); 
     Collection<File> files = 
       FileUtils.listFiles(processesFolder, null, false); 

     for (File f : files) { 
      InputStream is = new FileInputStream(f); 
      db.addInputStream(f.getName(), is); 
     } 

     db.deploy(); 
} 

這樣,我進入環比files,我居然看到了正確的XML是正在處理。然後db.deploy()被正確執行並且應用程序被部署。

那我試試這個JSON { "processDefinitionKey":"oneTaskProcess" }這個URL http://myuser:[email protected]:8080/runtime/process-instances但響應:

{ 
    "message": "Bad request", 
    "exception": "no processes deployed with key 'oneTaskProcess'" 
} 

在數據庫中,我看到了部署,但不存在流程定義(act_re_procdef表是空的)。

我的方法有什麼問題?

回答

2

我的問題是關於進程定義文件名:它是one-task-process.xml,但它應該是one-task-process.bpmn20.xml

+0

thx。我瘋了。 –

相關問題