我正在做一些關於工作流概念和具體BPMN標準的研究。我主要對這個主題上的可用軟件感興趣。BPM引擎與BPM引擎服務器
我已經學習了像Activiti和jBPM這樣的軟件,它們都是用Java實現的。儘管他們是,我正在尋找別的東西。儘管這樣的軟件自稱BPM Engine
我寧願將它們命名爲BPM Engine Servers
。它們是獨立的服務器(使用基於Web的GUI),這使得將它們嵌入到其他服務器中變得非常困難。
現在我的問題是:是否有一個概念作爲BPM Engine
在它只執行給定數據的給定BPM的方式,只有一個步驟?沒有任何GUI或直接用戶交互(類似於庫)?我應該搜索什麼?它是什麼名字?我的期望是否有效?
[更新]
我花了最後幾個小時研究的Activiti的用戶指南。我仍然不確定我是否可以按照我想要的方式使用它!如果有人能夠確認,我將不勝感激。
我對一個類似控制檯的應用程序很感興趣,我可以隨時運行它,給它以前正在運行的進程(最有可能序列化爲一個字符串)。引擎應該根據給定的歷史構建過程。
一旦這個過程被重建,我想通過告訴它發生了什麼一步向前移動它。然後它會通知我下一個要執行和關閉的任務。
最後,我將在將它作爲一個字符串獲取後存儲更新的過程(引擎應該以某種方式將其序列化,以便稍後可以將其反序列化)。
我不希望引擎擁有自己的數據庫或內存存儲。一旦完成,我希望它完全關閉。這就是我的意思是Engine
,沒有用戶交互,沒有存儲訪問。
任何BPM引擎能以這種方式執行嗎?
說實話,我根本不是Java開發人員。所有我設法瞭解到的這兩個軟件都是他們第一眼看到的。如果你能指導我做一些關於如何將這兩者中的任何一個用作圖書館的教程或例子,那將是非常好的,那將會很棒。因此,我不是指如何在項目中引用他們的jar文件,而是如何爲他們提供數據以及他們如何通知我關於狀態更改或生成的消息。謝謝。 – Mehran
Hey Mehran,爲了能夠將Activiti(或任何其他狀態機)嵌入到應用程序中,瞭解Java以及如何構建Java項目非常重要。 JBPM和Activiti都是旨在將BPM引擎引入Java開發人員領域的項目,而不是迫使開發人員學習新工具。也就是說,發行版中的activiti-webapp-rest2模塊可能是最好和最簡單的示例應用程序。 –
Mehran,同樣適用於Eclipse Process Manager「Stardust」http://www.eclipse.org/stardust/。您可以嵌入引擎,例如在Spring應用程序中,配置內存數據庫併爲其提供進程模型以構建所需的配置。 – RobE