Jbpm

          http://hi.baidu.com/shirdrn/blog/item/a203de6039d2a7d98db10dd7.html

          jBPM,全稱是Java Business Process Management,是一種基于J2EE的輕量級工作流管理系統(tǒng)。jBPM是公開源代碼項目,它使用要遵循 Apache License。jBPM在2004年10月18日,發(fā)布了2.0版本,并在同一天加入了JBoss,成為了JBoss企業(yè)中間件平臺的一個組成部分,它的名稱也改成JBoss jBPM。隨著jBPM加入JBoss組織,jBPM也將進入一個全新的發(fā)展時代,它的前景是十分光明的。

          jBPM最大的特色就是它的商務(wù)邏輯定義沒有采用目前的一些規(guī)范,如WfMC´s XPDL, BPML, ebXML, BPEL4WS等,而是采用了它自己定義的JBoss jBPM Process Definition Language (jPDL)。jPDL認為一個商務(wù)流程可以被看作是一個UML狀態(tài)圖。jPDL就是詳細定義了這個狀態(tài)圖的每個部分,如起始、結(jié)束狀態(tài),狀態(tài)之間的轉(zhuǎn)換等。

          jBPM的另一個特色是它使用Hibernate來管理它的數(shù)據(jù)庫。Hibernate是目前Java領(lǐng)域最好的一種數(shù)據(jù)持久層解決方案。通過Hibernate,jBPM將數(shù)據(jù)的管理職能分離出去,自己專注于商務(wù)邏輯的處理。

          關(guān)于jPDL

          jPDL(JBoss jBPM Process Definition Language)是構(gòu)建于jBPM框架上的流程語言之一。在jPDL中提供了任務(wù)(tasks)、待處理狀態(tài) (wait states)、計時器(timers)、自動處理(automated actions)…等術(shù)語,并通過圖型化的流程定義,很直觀地描述業(yè)務(wù)流程。

          jPDL可以部署于Java語言的任何應(yīng)用環(huán)境下,JavaSE Application(Swing/SWT)、JavaEE Application(Application Server) 。

          jPDL分發(fā)包的組成

          目前jPDL的最新版本是3.2.3,通過http://labs.jboss.com/jbossjbpm/jpdl_downloads/可以獲得官方下載包。下載包分為兩種,一種是標準包(jbpm-jpdl-3.2.3.zip);一種是套件包(jbpm-jpdl-suite-3.2.3.zip)。兩者最大的區(qū)別是套裝包自帶一個已經(jīng)配置好的jboss服務(wù),下載解壓縮后,可直接運行。

          (1)jPDL的核心程序包(jbpm-jpdl.jar)

          它是一個典型的jar文件,它涵蓋對流程定義和運行時流程實例上下文環(huán)境的操作API。在最簡化的業(yè)務(wù)流程樣例中,jPDL將流程定義存儲與XML格式的定義文件中,在運行時載入內(nèi)存,在內(nèi)存里記錄完整的業(yè)務(wù)實例和執(zhí)行過程的環(huán)境變量,并完成全部操作。顯然,在實際應(yīng)用中,流程信息必須被持久化的存儲于數(shù)據(jù)庫中。jPDL使用了Hibernate作為其對象持久化的API。

          (2)Graphical Process Designer插件(jbpm-jpdl-designer-3.1.2.zip)

          它是一個基于Eclipse的圖型編輯插件。使用它可以對業(yè)務(wù)流程進行可視化的定制,而無須手動編輯XML文件。該插件還提供了流程定義上傳功能,可以將新定義的流程發(fā)布到在線運行的jPDL系統(tǒng)上。

          (3)jPDL身份包(jbpm-identity.jar)

          它是jPDL的一個輕量級擴展包,簡單實現(xiàn)了組Group、用戶User、許可權(quán)Permission等用戶身份認證和鑒權(quán)機制。如果您的應(yīng)用環(huán)境只需要簡單的用戶認證鑒權(quán)管理,那么它十分適合您。

          (4)jPDL Web控制臺(jbpm-console.war)

          它是一個標準Web應(yīng)用(使用了JSF技術(shù)),提供了對jPDL平臺執(zhí)行情況的監(jiān)控程序(對jPDL數(shù)據(jù)庫的監(jiān)控)。管理員可以通過該程序方便的維護jPDL的數(shù)據(jù)庫,管理流程定義和流程實例的執(zhí)行情況。同時,它還提供了一個簡單的Getting started DEMO,方便初學(xué)者了解jPDL。

          jbpm-jpdl-suite-3.2.3.zip壓縮包組成

          在解壓jbpm-jpdl-suite-3.2.3.zip后,會看到很多目錄,如下所示:

          (1)config目錄

          該目錄存放了jPDL的默認配置文件 ,包括hibernate.cfg.xml 、jbpm.cfg.xml(jPDL的主配置文件,默認是空的)、jbpm.mail.templates.xml(郵件模板配置文件)、log4j.properties(日志配置文件)

          (2)db目錄

          該目錄存放了jPDL針對不同數(shù)據(jù)庫的表初始化sql文件。這里要說的是,jbpm.jpdl.mysql.sql在MySql下批量運行時,會出現(xiàn)錯誤提示,原因是語句后缺少”;”號,需要修訂后才能使用。

          (3)designer目錄

          該目錄存放了GPD(Graphical Process Designer)插件。

          (4)examples目錄

          該目錄存放了jPDL的簡單范例。

          (5)doc目錄

          該目錄存放jPDL 的相關(guān)說明文檔,包括用戶指南、Java API文檔等。

          (6)server目錄

          該目錄存放了配置好的jBoss和控制臺程序,Windows下雙擊start.bat可立即執(zhí)行。數(shù)據(jù)庫使用HSQL,存放于/server/server/jbpm/data下。

          (7)src目錄

          該目錄下存放的是源代碼,可以通過查看代碼來了解其具體實現(xiàn),有助于增強理解。

          (8)deploy目錄

          該目錄下面包含3個war包:jbpm-console.war、jbpm-enterprise.ear、jbpm-mail.war。

          (9)lib目錄

          該目錄中存放了支持的jar包。

          posted on 2009-03-29 17:38 luofeng225 閱讀(479) 評論(0)  編輯  收藏 所屬分類: 未分類

          <2009年3月>
          22232425262728
          1234567
          891011121314
          15161718192021
          22232425262728
          2930311234

          導(dǎo)航

          統(tǒng)計

          公告

          我曾經(jīng)聽到這么一個故事: 一個年輕的程序員問一個老程序員(一個比較牛逼的公司的CTO) 年輕程序員: 你為什么這么牛X., 就好像沒有你不會的。老程序員: 積累的。年輕程序員: 怎么才能積累到您的程度呢。我每天都在積累。但是似乎都沒有感覺到進步。老程序員: 我從20歲開始做到了一件事情,直到今天,而且盡可能地保證不間斷。年輕程序員: 到底是什么? 老程序員: 我每天保證自己有2個小時在學(xué)習(xí)新的東西。

          常用鏈接

          留言簿(3)

          隨筆分類

          隨筆檔案

          文章分類

          相冊

          收藏夾

          Java Website

          java技術(shù)博客

          搜索

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 芦山县| 鹤山市| 新邵县| 调兵山市| 舒兰市| 菏泽市| 天门市| 沧源| 大宁县| 青龙| 方正县| 凤阳县| 海伦市| 和顺县| 孙吴县| 体育| 综艺| 茶陵县| 宁海县| 建平县| 玛多县| 萨迦县| 海林市| 秦安县| 金川县| 东城区| 汶川县| 遂川县| 桦甸市| 湘潭市| 托里县| 凌海市| 金门县| 饶平县| 二连浩特市| 富蕴县| 佛坪县| 黄平县| 额敏县| 阳城县| 家居|