JBPM工作流簡單步驟

啓動流程:
獲取最新的流程定義:
JbpmContext.getCurrentJbpmContext().getGraphSession().findLatestProcessDefinitions();//返回List
獲取指定流程定義:
ProcessDefinition processDefinition =
graphSession.loadProcessDefinition(processDefinitionId);
創建流程實例:
ProcessInstance processInstance = new ProcessInstance(processDefinition);
開始任務節點:
TaskInstance taskInstance =
processInstance.getTaskMgmtInstance().createStartTaskInstance();
獲取指定任務實例(ID):
TaskMgmtSession taskMgmtSession;
taskMgmtSession = jbpmContext.getTaskMgmtSession();
TaskInstance taskInstance = taskMgmtSession.loadTaskInstance(taskInstanceId);
獲取任務列表:
taskMgmtSession.findTaskInstances(userName);//userName爲指派的人名(或角色名)

獲取任務變量:
TaskController taskController = taskInstance.getTask().getTaskController();
List variableAccesses = taskController.getVariableAccesses();
注:TaskController 有兩個關鍵的函數 initializeVariables,submitParameters,一個用來從流程中把變量置入task實例,另一個則相反,把task中變量更新到流程變量

根據流程定義找到相關的任務定義
ProcessDefinition pd = jbpmContext.getGraphSession().getProcessDefinition(id);
List tasklist = pd.getTaskMgmtDefinition().getTasks();

根據流程實例找到任務實例
taskMgmtSession.findTaskInstancesByProcessInstance(processInstance);

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章