Activiti學習文件(三)之畫流程圖並部署流程
上一節我們把 Activiti 的基礎環境給搭建好了,接下來的話就要使用到 Activiti 進行開發功能。當然了,在開發 Activiti 的時候,需要 :
a)先畫好流程圖;
b)部署流程;
這一節的話,我們就來講解這兩個步驟:
1,畫流程圖:
開啟Eclipse,File--->New--->Other---->Activiti----->Activiti Diagram
之後的話,點選 Next ----->直到 “完成” 就可以了!
然後在 WebRoot / WebContent 上右鍵新建一個資料夾,例:bpmn資料夾;
第一次畫流程圖的時候需要注意到一些事情,一些引數的設定:
a) Properties----->General------>Name------->XXXX( 例:提交申請 )
b) 各個流程的審批人員設定: 在提交申請的這個階段的時候,可以用一個EL表示式來定義操作人員,例如:${inputUser}
當然,在接下來的經紀人審批和老總審批的審批處理人員選擇,可以直接使用之前寫好的類:( Listeners----->New------>Select class )[http://download.csdn.net/detail/samile6899/9763943]
c ) 各個流程之間需要資料傳遞,當然這個在之前的 Action 方法中也有寫到,這邊也直接使用就可以了……( 每個階段的話,都需要寫一下 )
d ) 流程定義的Key,注意建議這裡需要和domain包中的實體名一致,因為後面提交流程的時候,需要用到這個流程定義的Key,如果不一致會導致流程提交失敗;( 點選空白處就可以編輯了 )
當然了,最後一點。在專案中,工作流可能是多條件的,很少是那種單一的順序,直接執行完。在那種多條件的情況下,就要設定變量了;
當流程圖畫好之後的話,就會看到新建的bpmn資料夾多了兩個檔案: xxx.bpmn 和 xxx.png
然後,把這兩個檔案COPY出去,通過壓縮軟體壓縮成 ZIP / RAR 檔案。至此,第一階段就完了……
2,部署ZIP流程圖:
1, 繪製相應的JSP頁面和相應的Action類;( 具體的JSP頁面和Action類就不在此細說了,直接上傳資源,大家下載就可以了…… )
2,釋出流程的相應方法:
WorkflowAction.java :
/**
* 釋出流程
* @return
*/
public String newdeploy(){
//獲取頁面傳遞的值
//1:獲取頁面上傳遞的zip格式的檔案,格式是File型別
File file = workflowBean.getFile();
//檔名稱
String filename = workflowBean.getFilename();
//完成部署
workflowService.saveNewDeploye(file,filename);
return "list";
}
WorkflowServiceImpl.java :
/**部署流程定義*/
@Override
public void saveNewDeploye(File file, String filename) {
try {
//2:將File型別的檔案轉化成ZipInputStream流
ZipInputStream zipInputStream = new ZipInputStream(new FileInputStream(file));
repositoryService.createDeployment()//建立部署物件
.name(filename)//新增部署名稱
.addZipInputStream(zipInputStream)//
.deploy();//完成部署
} catch (Exception e) {
e.printStackTrace();
}
}
**************************************************************************************************