spark的自留地(ofbiz/eclipse rcp/shark/opentaps)

            BlogJava :: 首頁(yè) :: 聯(lián)系 :: 聚合  :: 管理
            54 Posts :: 0 Stories :: 112 Comments :: 0 Trackbacks

          好久沒(méi)有去看shark項(xiàng)目的進(jìn)展了,說(shuō)起來(lái)有些慚愧上次去enhydra.org網(wǎng)站應(yīng)該還是四年前的事情了,shark 1.x版本一直覺(jué)得夠用了,也就不再留意它的進(jìn)展了。也一直未做過(guò)什么對(duì)外的文檔與代碼貢獻(xiàn),鄙視一下。今天來(lái)看看網(wǎng)站上對(duì)shark的描述,提些自己的看法與應(yīng)用認(rèn)識(shí)。

          Shark與JaWE是Enhydra基于LGPL授權(quán)協(xié)議下提供的一組開(kāi)源工作流軟件。打個(gè)比方就類似于JasperReport與iReport的兩者的關(guān)系。Shark提供完整的工作流引擎,JaWE是一個(gè)工作流程設(shè)計(jì)器與調(diào)試環(huán)境。

          以我使用的經(jīng)驗(yàn)來(lái)說(shuō),Shark是一個(gè)嚴(yán)格遵守WFMC標(biāo)準(zhǔn)的,使用XPDL語(yǔ)言進(jìn)行描述的引擎。Shark可以應(yīng)用在多種J2EE容器下支持會(huì)話Bean與Corba方式調(diào)用及WEB服務(wù)調(diào)用。

          初學(xué)者很容易被這些開(kāi)源項(xiàng)目中大量的概念與術(shù)語(yǔ)嚇住,基本上都是死在第一步上的,無(wú)法入手。以我的經(jīng)驗(yàn)來(lái)說(shuō),先了解WFMC標(biāo)準(zhǔn)與XPDL語(yǔ)言標(biāo)簽的含義,你有個(gè)基本的概念頭認(rèn)識(shí)后,然后用JaWE模仿示例做幾個(gè)你常用的小流程,調(diào)試跑起來(lái),你立即就會(huì)被它吸引上而不斷去嘗試它博大精深的內(nèi)容。

          當(dāng)然,很多人又會(huì)跳出來(lái)說(shuō)Shark不好,它是基于自己的框架開(kāi)發(fā)的,并未使用struts/spring+hibernate這些更大眾化的框架來(lái)做,它有自己的DODS等技術(shù),學(xué)習(xí)曲線與成本很高。好象OFBiz不被大家接收也是這個(gè)原因(它有自己的OR技術(shù)與Framework)關(guān)于這點(diǎn)我的看法是,如果你是應(yīng)付一些簡(jiǎn)單項(xiàng)目業(yè)務(wù)需求,是無(wú)需套用象OFBiz或Shark這些面向企業(yè)業(yè)務(wù)應(yīng)用的框架,這叫用高射炮打蚊子。簡(jiǎn)單的信息CRUD自己隨便找個(gè)框架或是原來(lái)的代碼拷貝修改一下就可以了。不要天天比較說(shuō)這個(gè)業(yè)務(wù)框架不好,那個(gè)技術(shù)不夠開(kāi)放。要知道這些項(xiàng)目都是這些開(kāi)源組織多年持續(xù)堅(jiān)持不斷積累的沉淀,那時(shí)哪有這么多成熟的技術(shù)框架呀?而且我覺(jué)得客戶或是作為技術(shù)負(fù)責(zé)人來(lái)說(shuō),只有最適合的,沒(méi)有說(shuō)一定要什么技術(shù)框架?啥叫主流?啥叫未來(lái)方向?扯淡多過(guò)實(shí)際,再過(guò)兩三年現(xiàn)在所謂的主流框架還真的是主流嗎?

          shark在不同的人手中應(yīng)該是可以有不同的用法,我是把它獨(dú)立做為一個(gè)組件來(lái)應(yīng)用的,使用需要用到工作流程驅(qū)動(dòng)的應(yīng)用我會(huì)使用到它。通過(guò)JaWE根據(jù)業(yè)務(wù)需求設(shè)計(jì)XPDL文件存放至資源庫(kù)中,把流程結(jié)束點(diǎn)需觸發(fā)的應(yīng)用做成外部應(yīng)用在工作流程中加以定義(支持Beanshell/WebService多種方式),類似于JspClient的示例方式在你自己的頁(yè)面中提供待辦事宜、工作申報(bào)、審批等操作。當(dāng)然最主要的集成工作就是組織結(jié)構(gòu)與權(quán)限的融合。這樣你的業(yè)務(wù)系統(tǒng)就可以同shark全面融合了。最棒的情況下就是多個(gè)業(yè)務(wù)系統(tǒng)通過(guò)shark的同一實(shí)例串接起來(lái),實(shí)現(xiàn)不同業(yè)務(wù)系統(tǒng)的工作銜接。

          說(shuō)得有些粗糙,可能文筆比較差,也不知?jiǎng)e人是否能明白。以后有機(jī)會(huì)再就某個(gè)主題來(lái)說(shuō)吧。

          本人原創(chuàng)文章,歡迎轉(zhuǎn)載,轉(zhuǎn)載請(qǐng)注明出處!


           

          posted on 2008-10-12 13:40 shanghai_spark 閱讀(4270) 評(píng)論(6)  編輯  收藏 所屬分類: shark

          Feedback

          # re: shark在業(yè)務(wù)系統(tǒng)開(kāi)發(fā)中的應(yīng)用方法 2008-10-12 15:14 leekiang
          你把shark作為一個(gè)獨(dú)立的組件來(lái)用,那么怎么解決事務(wù)問(wèn)題的?  回復(fù)  更多評(píng)論
            

          # re: shark在業(yè)務(wù)系統(tǒng)開(kāi)發(fā)中的應(yīng)用方法 2008-10-12 17:53 Jack.Wang
          恩,說(shuō)的不錯(cuò),幾年前做過(guò)工作流,當(dāng)時(shí)我負(fù)責(zé) flowbuilder 和 formbuilder 工具的設(shè)計(jì)和開(kāi)發(fā),參考過(guò)JaWE和ireport開(kāi)源項(xiàng)目,覺(jué)得很不錯(cuò)!其中flowbuilder 核心是采用 JGraph 開(kāi)發(fā)的!想想以幾年過(guò)去了!  回復(fù)  更多評(píng)論
            

          # re: 如何集成shark工作流到你自己的業(yè)務(wù)系統(tǒng) 2008-10-12 18:01 廣州spark
          shark是一個(gè)工作流引擎,為你的業(yè)務(wù)系統(tǒng)提供流程信息(如流程、當(dāng)前活動(dòng)、當(dāng)前意見(jiàn)等),業(yè)務(wù)中的事務(wù)的控制是由你自己處理。對(duì)shark來(lái)說(shuō)可是一個(gè)封閉的應(yīng)用調(diào)用。我當(dāng)初是這么做的,不知道我這樣描述能否明白。  回復(fù)  更多評(píng)論
            

          # re: 如何集成shark工作流到你自己的業(yè)務(wù)系統(tǒng) 2008-10-13 01:45 leekiang
          我的意思是,你的業(yè)務(wù)操作和流程操作應(yīng)該在一個(gè)事務(wù)內(nèi),要么都發(fā)生,要么都不發(fā)生。
          用shark的話怎么做到這一點(diǎn)?  回復(fù)  更多評(píng)論
            

          # re: 如何集成shark工作流到你自己的業(yè)務(wù)系統(tǒng) 2008-10-13 10:52 廣州spark
          對(duì)我的系統(tǒng)來(lái)說(shuō),報(bào)批、批復(fù)、駁回、中止這些流程操作是對(duì)你的業(yè)務(wù)(比如OA公文)的意見(jiàn),它本身并不涉及具體業(yè)務(wù)內(nèi)容(比如說(shuō)對(duì)公文的意見(jiàn)并不會(huì)直接去改寫公文內(nèi)容,它們不是一個(gè)原子事務(wù))。它相當(dāng)于觸發(fā)器,觸發(fā)我業(yè)務(wù)系統(tǒng)中的對(duì)應(yīng)操作(我所有操作都在業(yè)務(wù)系統(tǒng)的服務(wù)代碼中,它可以讀取流程信息對(duì)業(yè)務(wù)事務(wù)進(jìn)行控制,當(dāng)然你也可以回寫shark的流程信息,比如在某種異常情況下去改寫對(duì)應(yīng)流程或活動(dòng)實(shí)例信息)。  回復(fù)  更多評(píng)論
            

          # re: 如何集成shark工作流到你自己的業(yè)務(wù)系統(tǒng)[未登錄](méi) 2013-08-26 16:49 tony
          你好:
          能不能介紹下如何搭建shark開(kāi)發(fā)環(huán)境,搞了2周沒(méi)有搭好,領(lǐng)導(dǎo)向?qū)Р粷M意。 157826218@qq.com  回復(fù)  更多評(píng)論
            

          主站蜘蛛池模板: 宣化县| 德州市| 上饶县| 万年县| 黔西| 西丰县| 湖南省| 曲松县| 陆良县| 剑川县| 定安县| 简阳市| 江永县| 友谊县| 西安市| 惠州市| 铜陵市| 吕梁市| 祥云县| 重庆市| 沁水县| 陵川县| 华蓥市| 顺昌县| 龙胜| 清流县| 措勤县| 威宁| 安图县| 仁寿县| 青川县| 洱源县| 金堂县| 孟村| 双江| 元江| 昌宁县| 黑水县| 湖口县| 大同县| 达日县|