java activit怎么画图_Activiti 快速入门指南(用Java编写服务任务)
用Java編寫服務(wù)任務(wù)
如前所述,我們的流程具有“Generic and Automated Data Entry”活動(dòng)(虛擬后端調(diào)用),當(dāng)入職經(jīng)驗(yàn)不超過3年時(shí),將有條件地執(zhí)行該活動(dòng),如所提供的,這是一個(gè)“腳本任務(wù)”。在這種情況下,執(zhí)行一小段Javascript來(lái)說(shuō)明系統(tǒng)處理步驟,我們將把這個(gè)腳本任務(wù)遷移到Java中,以說(shuō)明Java的強(qiáng)大功能如何滿足各種流程要求。
創(chuàng)建一個(gè)新的Java類,如下所示:
文件:$mvnProject/src/main/java/com/example/AutomatedDataDelegate.java
package com.example;
import java.util.Date;
import org.activiti.engine.delegate.DelegateExecution;
import org.activiti.engine.delegate.JavaDelegate;
public class AutomatedDataDelegate implements JavaDelegate {
@Override
public void execute(DelegateExecution execution) throws Exception {
Date now = new Date();
execution.setVariable("autoWelcomeTime", now);
System.out.println("Faux call to backend for ["
+ execution.getVariable("fullName") + "]");
}
}
將腳本任務(wù)更改為指向AutomatedDataDelegate的服務(wù)任務(wù)。
文件:$mvnProject/src/main/resources/onboarding.bpmn20.xml
...
...
替換為:
...
通過運(yùn)行“mvn package”來(lái)打包代碼。
像以前一樣運(yùn)行Java程序,注意以下示例輸出。
ProcessEngine [default] Version: [5.22.0.0]
Found process definition [Onboarding] with id [onboarding:1:4]
Onboarding process started with process instance id [5] key [onboarding]
Active outstanding tasks: [1]
Processing Task [Enter Data]
Full Name?
John Doe
Years of Experience? (Must be a whole number)
3
Faux call to backend for [John Doe]
BEGIN Onboarding [onboarding] Sun Nov 27 22:57:32 EST 2016
-- Start [startOnboarding] 4 ms
-- Enter Data [enterOnboardingData] 10153 ms
-- Years of Experience [decision] 2 ms
-- Generic and Automated Data Entry [automatedIntro] 0 ms
-- End [endOnboarding] 0 ms
COMPLETE Onboarding [onboarding] Sun Nov 27 22:57:42 EST 2016
觀察輸出“Faux call to backend for [John Doe]”,該圖說(shuō)明了如何訪問先前設(shè)置的流程變量。
這個(gè)簡(jiǎn)單的示例說(shuō)明了在應(yīng)用程序中添加流程驅(qū)動(dòng)的抽象的簡(jiǎn)便性和強(qiáng)大功能。
總結(jié)
以上是生活随笔為你收集整理的java activit怎么画图_Activiti 快速入门指南(用Java编写服务任务)的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: vue-router
- 下一篇: java美元兑换,(Java实现) 美元