天天看點

JBPM4 讀書筆記點滴

String deploymentId = repositoryService.createDeployment()

.addResourceFromClasspath(

"com/examples/jbpm4/n2_3_4/process.jpdl.xml").deploy();

多次調用addResourceFromClasspath将流程定義的其他資源都部署到資料庫中

addResourceFrom*** 流程定義可以從檔案、Web URL、字元串、輸入流或Zip流中擷取

部署後擷取一個關聯的Key

ProcessEngine是所有Service API之源

任務服務API

主要目的是提供對任務清單的通路操作,Task活動産生的人機互動業務

流程啟動變量

ExecutionService提供了操作具體流程變量的方法

TaskService也有,操作的是任務綁定的流程變量,HistoryService

流程運作中,Execution接口對象有提供操作流程變量的方法

使用表單幫助工作流引擎擷取使用者的輸入

使用表單,可以通過form屬性将表單綁定在Task活動或start活動上

<start form=”/com/example/jbpm4/taskform/request_vacation.ftl” name=”start”>

<task form=”/…/verify.ftl”>

提供兩套:

IdentitySessionImpl:預設,使用的是jbpm4_id_user jbpm4_id_group jbpm4_id_membership

JBossIdmIdentitySessionImpl: 和JBOSS的內建身份驗證

自定義的形式

1、 删除jbpm.cfg.xml中的<import resource=”jbpm.identity.cfg.xml”

2、 在jbpm.cfg.xml加入

<transaction-context>

<object class=”yourpackage.YourIdentitySessionImpl”/>

</transaction-context>

實作 org.jbpm.pvm.internal.identity.spi.IdentitySession接口,同時需要實作User Group接口

具體實作參考預設帶的兩個如IdentitySessionImpl.java

<a href="https://anosvn.jboss.org/repos/jbpm/jbpm4">https://anosvn.jboss.org/repos/jbpm/jbpm4</a>

詳細可以參考: 《jBPM工作流應用開發指南》代碼