一、什么是 jBPM?
jBPM 是一個靈活的業務流程管理 (BPM) 套件。它不僅僅是一個流程引擎,而是一個集成了多種功能的平臺,旨在幫助企業建模、自動化和監控業務流程。jBPM 遵循業界標準,特別是 BPMN 2.0(業務流程模型和標記)用于流程建模,以及 DMN(決策模型和標記)用于決策管理。
1、核心組件和特性:
- BPMN 2.0 引擎: 這是 jBPM 的核心,負責執行業務流程定義。它是一個高性能、可擴展的引擎,能夠處理復雜的工作流場景,包括并行執行、條件分支、事件處理等。
- KIE Workbench (或 Business Central): 這是一個基于Web的集成開發環境和管理控制臺。業務分析師和開發者可以使用它來:
- 圖形化地建模 BPMN 流程和 DMN 決策表。
- 管理項目、版本控制(通常與 Git 集成)。
- 部署流程定義。
- 啟動和管理人力任務。
- 監控流程實例的執行狀態、查看歷史數據、生成報告。
- 人力任務服務 (Human Task Service): jBPM 深度集成了對人力任務的支持,允許將需要人工參與的步驟建模到流程中。系統可以創建任務,分配給用戶或組,用戶可以通過任務列表界面完成任務,并驅動流程繼續。
- 規則引擎集成 (Drools): jBPM 與 Red Hat 的另一個知名開源項目 Drools 規則引擎緊密集成。這使得可以在業務流程中輕松地執行業務規則和決策邏輯,實現更智能的流程自動化。
- 事件處理: 支持基于事件的流程觸發和處理,可以集成外部事件源。
- 持久化: 支持將流程狀態、任務數據等持久化到數據庫中,保證流程的可靠執行。
- API 和集成: 提供豐富的 Java API 和 REST API,方便與其他系統進行集成或二次開發。
- 多種部署模式: jBPM 可以作為獨立的服務器運行,也可以嵌入到 Java 應用程序中(如 Spring Boot 應用),非常靈活。
2、起源與關系:
jBPM 最早由 JBoss 開發,后來 JBoss 被 Red Hat 收購,jBPM 成為 Red Hat 開源中間件家族的一部分。它是 Red Hat Business Automation 產品(包括 RHPAM)的基礎。這意味著社區版的 jBPM 經過了企業級場景的考驗,并且 Red Hat 的商業支持和企業版功能是基于這個開源核心構建的。
3、從用戶角度看 jBPM:
- 優勢:
- 功能全面: 它是一個完整的BPM套件,不只是一個引擎,提供了建模、執行、監控、任務管理、規則集成等一站式功能。
- 標準兼容: 嚴格遵循 BPMN 2.0 和 DMN 標準,這意味著流程定義具有互操作性。
- 企業級背景: 作為一個大型公司支持的開源項目,它在穩定性、可伸縮性和安全性方面通常表現良好,適合企業級應用。
- 強大的規則集成: 如果你的業務流程需要復雜的決策邏輯,jBPM 與 Drools 的集成是一個顯著優勢。
- 考慮因素:
- 復雜性: 作為一個功能全面的套件,jBPM 的整體架構和配置可能比一些輕量級引擎更復雜,特別是對于初次接觸的用戶。KIE Workbench 功能強大但也可能顯得龐大。
- 資源消耗: KIE Workbench 或 standalone 服務器版本可能需要較多的系統資源。
- 社區版與商業版: 盡管開源版功能全面,但企業級的專業支持、更完善的高可用方案、某些高級管理工具和性能優化等通常需要通過 Red Hat 的商業產品獲得。
總結:
jBPM 是一個功能強大的、遵循標準的開源 BPM 套件,非常適合需要全面 BPM 功能、規則集成以及考慮未來可能需要企業級支持的場景。關于其停止更新的說法是不準確的,它仍然是一個活躍且被維護的開源項目。選擇 jBPM 意味著獲得一個成熟、穩定且功能豐富的平臺,但也需要投入相應的學習和配置成本。如果想清楚了,社區版的目的就是為了讓體驗,而不是用于生產。
二、使用Docker安裝jBPM
1、運行命令
docker run -p 8080:8080 -p 8001:8001 -d --name jbpm-server-full jboss/jbpm-server-full:latest
啟動之后,默認的用戶名和密碼:
- wbadmin/wbadmin
- krisv/krisv
- john/john
- mary/mary
- katy/katy
- jack/jack
- kieserver/kieserver1!
2、訪問地址
- Business Central - http://localhost:8080/business-central
- KIE Server - http://localhost:8080/kie-server/services/rest/server
- KIE Server Swagger docs - http://localhost:8080/kie-server/docs
- jBPM case management - http://localhost:8080/jbpm-casemgmt
?3、Business Central
- 設計用戶可以創建項目和頁面的視角
- 部署用戶可以管理執行服務器的視角
- 管理用戶可以控制流程和案例實例的視角
- 跟蹤用戶可以訪問分配的任務和報告的視角
4、安裝發行版
如果要部署發行版,或者帶有Demo的全功能版本,請一定要要先安裝和配置好Java1.8(Java 8 SDK)和ANT 1.10.15,否則無法啟動,特別是高版本的Java通常會導致失敗。在下面目錄可以看到,如果出現有.failed的文件就證明失敗了,要安裝正確Java和ANT,然后刪除這個文件,重新部署。可參看此文檔:jBPM Documentation
5、重要提示
jBPM 默認沒有中文界面,不過可以通過修改其界面資源文件來支持中文顯示,基本上有兩種途徑:
-
修改 jBPM 界面資源文件:可以修改 jBPM 的前端頁面,尤其是界面中的文本,替換成中文。這通常涉及到調整 jBPM 提供的資源文件,可能需要修改 HTML 模板或者是與后端交互的部分。
-
創建中文語言包:如果熟悉 jBPM 的源代碼,可以為其添加一個中文語言包。這通常包括對 jBPM 控制臺中的各種文本進行翻譯,確保用戶界面在中文環境下顯示正確。