国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      應(yīng)用于OSGi環(huán)境下的流程運行裝置和流程運行方法

      文檔序號:6399601閱讀:168來源:國知局
      專利名稱:應(yīng)用于OSGi環(huán)境下的流程運行裝置和流程運行方法
      技術(shù)領(lǐng)域
      本發(fā)明涉及流程技術(shù)領(lǐng)域,具體而言,涉及一種應(yīng)用于OSGi環(huán)境下的流程運行裝置和流程運行方法。
      背景技術(shù)
      OSGi (Open Service Gateway Initiative,開放服務(wù)網(wǎng)關(guān)發(fā)起組織)是面向 Java的動態(tài)模型系統(tǒng),它為模塊化應(yīng)用的開發(fā)定義了一個基礎(chǔ)架構(gòu),使得應(yīng)用程序可以實現(xiàn)定義精煉的、可重用的和可協(xié)作的標準組件,并能夠靈活地、動態(tài)地組裝和部署到應(yīng)用系統(tǒng)中。由于這些特性,OSGi已經(jīng)得到了業(yè)界的廣泛應(yīng)用,成為軟件集成和企業(yè)開發(fā)的首選架構(gòu)之一 O隨著軟件處理的業(yè)務(wù)復(fù)雜性的增加,跨區(qū)域,跨部門之間信息交互方式的需要越來越明顯,而且跨區(qū)域,跨部門之間業(yè)務(wù)配合也越來越多。工作流技術(shù)以其靈活的設(shè)計與部署,將流程邏輯與業(yè)務(wù)邏輯相分離,可以很輕松地適應(yīng)業(yè)務(wù)需求的多變,流程技術(shù)已經(jīng)成為企業(yè)解決方案中重要的一部分。然而由于OSGi環(huán)境下以模塊為單位動態(tài)地的加載、部署與運行程序代碼,以實現(xiàn)模塊間的松散耦合,這種機制與傳統(tǒng)的應(yīng)用程序完全不同。如圖1所示,在OSGi環(huán)境下,異步流程的節(jié)點被分散在兩個或多個模塊之間,流程在執(zhí)行的過程中會產(chǎn)生節(jié)點運行環(huán)境不匹配的情況,流程運行過程中需要在模塊ml與m2中切換,即Ο-tl時間段內(nèi)在ml環(huán)境中運行,而從tl時刻開始要進入m2環(huán)境,直至t2時刻;t2時刻以后流程則返回到原來的ml環(huán)境中。這時異步流程前后部分處理時的模塊環(huán)境就會出現(xiàn)沖突,導(dǎo)致流程數(shù)據(jù)傳遞的失敗。因此,需要一種新的流程運行技術(shù),可以解決異步流程中上下文環(huán)境會發(fā)生沖突的問題,從而避免流程數(shù)據(jù)傳遞失敗。

      發(fā)明內(nèi)容
      本發(fā)明正是基于上述問題,提出了一種新的流程運行技術(shù),可以解決異步流程中上下文環(huán)境會發(fā)生沖突的問題,從而避免流程數(shù)據(jù)傳遞失敗。有鑒于此,本發(fā)明提出了一種應(yīng)用于OSGi環(huán)境下的流程運行裝置,包括:持久化單元,當檢測到流程中當前運行的第一節(jié)點和與其相鄰的即將運行的第二節(jié)點屬于不同模塊時,保存所述第一節(jié)點對應(yīng)的第一模塊的運行環(huán)境;載入單元,當檢測到所述流程運行至所述第二節(jié)點時,在所述持久化單元中加載所述第二節(jié)點對應(yīng)的第二模塊的運行環(huán)境。在該技術(shù)方案中,通過將模塊的運行環(huán)境持久化來實現(xiàn)不同模塊間的運行環(huán)境的切換,從而解決了異步流程中上下文環(huán)境會發(fā)生沖突的問題,避免流程數(shù)據(jù)傳遞失敗。在上述技術(shù)方案中,優(yōu)選地,還包括:設(shè)置單元,根據(jù)接收到的設(shè)置指令,設(shè)置所述持久化單元的內(nèi)容。在該技術(shù)方案中,用戶可以根據(jù)自己的需求,任意設(shè)置運行環(huán)境的持久化位置,這樣就會將運行環(huán)境持久化到用戶想要保存的位置,給用戶帶來了方便。在上述技術(shù)方案中,優(yōu)選地,所述持久化單元的內(nèi)容包括數(shù)據(jù)庫和/或文件。在該技術(shù)方案中,持久化單元的內(nèi)容,即節(jié)點運行環(huán)境保存的位置可以是數(shù)據(jù)庫也可以是文件。在上述技術(shù)方案中,優(yōu)選地,所述載入單元包括:運行環(huán)境查找子單元,查找所述持久化單元中是否保存有所述第二節(jié)點對應(yīng)的第二模塊的運行環(huán)境;運行環(huán)境加載子單元,若檢測到所述環(huán)境查找子單元查找到所述第二模塊的運行環(huán)境,則直接在所述持久化單元中加載所述第二模塊的運行環(huán)境;運行環(huán)境創(chuàng)建子單元,若檢測到所述運行環(huán)境查找單元未查找到所述第二模塊的運行環(huán)境,則通知OSGi系統(tǒng)創(chuàng)建所述第二模塊的運行環(huán)境,在創(chuàng)建完成后在所述持久化單元中加載所述第二模塊的運行環(huán)境。在該技術(shù)方案中,對于持久化單元中已經(jīng)保存過的模塊的運行環(huán)境,當運行到此模塊的運行環(huán)境時,可以直接進行加載,而不需要再重新創(chuàng)建運行環(huán)境,節(jié)省了時間。在上述技術(shù)方案中,優(yōu)選地,所述流程包括多個節(jié)點,所述多個節(jié)點位于多個模塊當中。在該技術(shù)方案中,流程可以在多個不同的模塊當中順利的進行流程數(shù)據(jù)傳遞,而不會出現(xiàn)上下文環(huán)境沖突的問題。根據(jù)本發(fā)明的又一方面,還提供了一種應(yīng)用于OSGi環(huán)境下的流程運行方法,包括:步驟302,當檢測到流程中當前運行的第一節(jié)點和與其相鄰的即將運行的第二節(jié)點屬于不同模塊時,在持久化單元中保存所述第一節(jié)點對應(yīng)的第一模塊的運行環(huán)境;步驟304,當檢測到所述流程運行至所述第二節(jié)點時,在所述持久化單元中加載所述第二節(jié)點對應(yīng)的第二模塊的運行環(huán)境。在該技術(shù)方案中,通過將模塊的運行環(huán)境持久化來實現(xiàn)不同模塊間的運行環(huán)境的切換,從而解決了異步流程中上下文環(huán)境會發(fā)生沖突的問題,避免流程數(shù)據(jù)傳遞失敗。在上述技術(shù)方案中,優(yōu)選地,所述步驟302還包括:根據(jù)接收到的設(shè)置指令,設(shè)置所述持久化單元的內(nèi)容。在該技術(shù)方案中,用戶可以根據(jù)自己的需求,任意設(shè)置運行環(huán)境的持久化位置,這樣就會將運行環(huán)境持久化到用戶想要保存的位置,給用戶帶來了方便。在上述技術(shù)方案中,優(yōu)選地,所述持久化單元的內(nèi)容包括數(shù)據(jù)庫和/或文件。在該技術(shù)方案中,持久化單元的內(nèi)容,即節(jié)點運行環(huán)境保存的位置可以是數(shù)據(jù)庫也可以是文件。在上述技術(shù)方案中,優(yōu)選地,所述步驟304具體包括:查找所述持久化單元中是否保存有所述第二節(jié)點對應(yīng)的第二模塊的運行環(huán)境;若查找到所述第二模塊的運行環(huán)境,則直接在所述持久化單元中加載所述第二模塊的運行環(huán)境;若未查找到所述第二模塊的運行環(huán)境,則通知OSGi系統(tǒng)創(chuàng)建所述第二模塊的運行環(huán)境,在創(chuàng)建完成后在所述持久化單元中加載所述第二模塊的運行環(huán)境。在該技術(shù)方案中,對于持久化單元中已經(jīng)保存過的模塊的運行環(huán)境,當運行到此模塊的運行環(huán)境時,可以直接進行加載,而不需要再重新創(chuàng)建運行環(huán)境,節(jié)省了時間。在上述技術(shù)方案中,優(yōu)選地,所述流程包括多個節(jié)點,所述多個節(jié)點位于多個模塊當中。
      在該技術(shù)方案中,流程可以在多個不同的模塊當中順利的進行流程數(shù)據(jù)傳遞,而不會出現(xiàn)上下文環(huán)境沖突的問題。通過以上技術(shù)方案,可以解決異步流程中上下文環(huán)境會發(fā)生沖突的問題,從而避免流程數(shù)據(jù)傳遞失敗,實現(xiàn)了異步流程和OSGi的結(jié)合。


      圖1示出了流程運行過程的示意圖;圖2示出了根據(jù)本發(fā)明的實施例的流程運行裝置的框圖;圖3示出了根據(jù)本發(fā)明的實施例的流程運行方法的流程圖;圖4示出了根據(jù)本發(fā)明的實施例的流程運行方法的具體流程圖;圖5至圖7示出了根據(jù)本發(fā)明的實施例的流程運行過程的示意圖。
      具體實施例方式為了能夠更清楚地理解本發(fā)明的上述目的、特征和優(yōu)點,下面結(jié)合附圖和具體實施方式
      對本發(fā)明進行進一步的詳細描述。需要說明的是,在不沖突的情況下,本申請的實施例及實施例中的特征可以相互組合。在下面的描述中闡述了很多具體細節(jié)以便于充分理解本發(fā)明,但是,本發(fā)明還可以采用其他不同于在此描述的其他方式來實施,因此,本發(fā)明的保護范圍并不受下面公開的具體實施例的限制。圖2示出了根據(jù)本發(fā)明的實施例的流程運行裝置的框圖。如圖2所示,根據(jù)本發(fā)明的實施例的應(yīng)用于OSGi環(huán)境下的流程運行裝置200包括:持久化單元202,當檢測到流程中當前運行的第一節(jié)點和與其相鄰的即將運行的第二節(jié)點屬于不同模塊時,保存所述第一節(jié)點對應(yīng)的第一模塊的運行環(huán)境;載入單元204,當檢測到所述流程運行至所述第二節(jié)點時,在所述持久化單元中加載所述第二節(jié)點對應(yīng)的第二模塊的運行環(huán)境。在該技術(shù)方案中,通過將模塊的運行環(huán)境持久化來實現(xiàn)不同模塊間的運行環(huán)境的切換,從而解決了異步流程中上下文環(huán)境會發(fā)生沖突的問題,避免流程數(shù)據(jù)傳遞失敗。在上述技術(shù)方案中,優(yōu)選地,還包括:設(shè)置單元206,根據(jù)接收到的設(shè)置指令,設(shè)置所述持久化單元的內(nèi)容。在該技術(shù)方案中,用戶可以根據(jù)自己的需求,任意設(shè)置運行環(huán)境的持久化位置,這樣就會將運行環(huán)境持久化到用戶想要保存的位置,給用戶帶來了方便。在上述技術(shù)方案中,優(yōu)選地,所述持久化單元202的內(nèi)容包括數(shù)據(jù)庫和/或文件。在該技術(shù)方案中,持久化單元的內(nèi)容,即節(jié)點運行環(huán)境保存的位置可以是數(shù)據(jù)庫也可以是文件。在上述技術(shù)方案中,優(yōu)選地,所述載入單元204包括:運行環(huán)境查找子單元2042,查找所述持久化單元202中是否保存有所述第二節(jié)點對應(yīng)的第二模塊的運行環(huán)境;運行環(huán)境加載子單元2044,若檢測到所述環(huán)境查找子單元2042查找到所述第二模塊的運行環(huán)境,則直接在所述持久化單元202中加載所述第二模塊的運行環(huán)境;運行環(huán)境創(chuàng)建子單元2046,若檢測到所述運行環(huán)境查找單元2042未查找到所述第二模塊的運行環(huán)境,則通知OSGi系統(tǒng)創(chuàng)建所述弟_旲塊的運彳丁環(huán)境,在創(chuàng)建完成后在所述持久化單兀202中加載所述第二模塊的運行環(huán)境。在該技術(shù)方案中,對于持久化單元中已經(jīng)保存過的模塊的運行環(huán)境,當運行到此模塊的運行環(huán)境時,可以直接進行加載,而不需要再重新創(chuàng)建運行環(huán)境,節(jié)省了時間。在上述技術(shù)方案中,優(yōu)選地,所述流程包括多個節(jié)點,所述多個節(jié)點位于多個模塊當中。在該技術(shù)方案中,流程可以在多個不同的模塊當中順利的進行流程數(shù)據(jù)傳遞,而不會出現(xiàn)上下文環(huán)境沖突的問題。圖3示出了根據(jù)本發(fā)明的實施例的流程運行方法的流程圖。如圖3所示,根據(jù)本發(fā)明的實施例的應(yīng)用于OSGi環(huán)境下的流程運行方法,包括:步驟302,當檢測到流程中當前運行的第一節(jié)點和與其相鄰的即將運行的第二節(jié)點屬于不同模塊時,在持久化單元中保存所述第一節(jié)點對應(yīng)的第一模塊的運行環(huán)境;步驟304,當檢測到所述流程運行至所述第二節(jié)點時,在所述持久化單元中加載所述第二節(jié)點對應(yīng)的第二模塊的運行環(huán)境。在該技術(shù)方案中,通過將模塊的運行環(huán)境持久化來實現(xiàn)不同模塊間的運行環(huán)境的切換,從而解決了異步流程中上下文環(huán)境會發(fā)生沖突的問題,避免流程數(shù)據(jù)傳遞失敗。在上述技術(shù)方案中,優(yōu)選地,所述步驟302還包括:根據(jù)接收到的設(shè)置指令,設(shè)置所述持久化單元的內(nèi)容。在該技術(shù)方案中,用戶可以根據(jù)自己的需求,任意設(shè)置運行環(huán)境的持久化位置,這樣就會將運行環(huán)境持久化到用戶想要保存的位置,給用戶帶來了方便。在上述技術(shù)方案中,優(yōu)選地,所述持久化單元的內(nèi)容包括數(shù)據(jù)庫和/或文件。在該技術(shù)方案中,持久化單元的內(nèi)容,即節(jié)點運行環(huán)境保存的位置可以是數(shù)據(jù)庫也可以是文件。在上述技術(shù)方案中,優(yōu)選地,所述步驟304具體包括:查找所述持久化單元中是否保存有所述第二節(jié)點對應(yīng)的第二模塊的運行環(huán)境;若查找到所述第二模塊的運行環(huán)境,則直接在所述持久化單元中加載所述第二模塊的運行環(huán)境;若未查找到所述第二模塊的運行環(huán)境,則通知OSGi系統(tǒng)創(chuàng)建所述第二模塊的運行環(huán)境,在創(chuàng)建完成后在所述持久化單元中加載所述第二模塊的運行環(huán)境。在該技術(shù)方案中,對于持久化單元中已經(jīng)保存過的模塊的運行環(huán)境,當運行到此模塊的運行環(huán)境時,可以直接進行加載,而不需要再重新創(chuàng)建運行環(huán)境,節(jié)省了時間。在上述技術(shù)方案中,優(yōu)選地,所述流程包括多個節(jié)點,所述多個節(jié)點位于多個模塊當中。在該技術(shù)方案中,流程可以在多個不同的模塊當中順利的進行流程數(shù)據(jù)傳遞,而不會出現(xiàn)上下文環(huán)境沖突的問題。下面以審批流程為例,結(jié)合圖4至圖7,對本發(fā)明的技術(shù)方案進行詳細說明。圖4示出了根據(jù)本發(fā)明的實施例的流程運行方法的具體流程圖。如圖4所示,根據(jù)本發(fā)明的實施例的流程運行方法的具體流程如下:步驟402,保存當前流程運行環(huán)境。當流程中相鄰的兩個節(jié)點分別屬于兩個不同的模塊時,節(jié)點在流程運行時所需要的環(huán)境就會隨著模塊的不同而不同,就需要對前一個節(jié)點進行運行環(huán)境的保存,持久化介質(zhì)可以根據(jù)具體情況自行選擇,具體如圖5所示,當流程運行到審批節(jié)點時,這時檢測到其一下節(jié)點,不是審批節(jié)點,而是處理節(jié)點,此時,模塊的運行環(huán)境就不同了,此時就把審批節(jié)點所對應(yīng)的ml模塊的運行環(huán)境保存。步驟404,載入目標環(huán)境。當流程中正在運行的節(jié)點與前一個節(jié)點不屬于一個模塊時,需要單獨從持久化介質(zhì)中加載此節(jié)點的運行環(huán)境,如圖6所示,當流程從審批節(jié)點運行到處理節(jié)點時,它所需要的環(huán)境是模塊m2的環(huán)境,而這個節(jié)點之前的環(huán)境是模塊ml的環(huán)境,這時就需要從數(shù)據(jù)庫或文件中加載模塊m2的運行環(huán)境。步驟406,恢復(fù)持久化的環(huán)境。對于持久化介質(zhì)中已經(jīng)保存過的模塊的運行環(huán)境,當運行到此模塊的運行環(huán)境時,可以直接進行加載,而不需要再重新創(chuàng)建運行環(huán)境,節(jié)省了時間。如圖7所示,當流程再次回轉(zhuǎn)到ml運行環(huán)境時,上一個節(jié)點的運行環(huán)境就會產(chǎn)生沖突,此時就要將之前保存的ml環(huán)境從持久化介質(zhì)中取出來,實現(xiàn)運行環(huán)境的切換。以上結(jié)合附圖詳細說明了本發(fā)明的技術(shù)方案,通過本發(fā)明的技術(shù)方案,可以解決異步流程中上下文環(huán)境會發(fā)生沖突的問題,從而避免流程數(shù)據(jù)傳遞失敗,實現(xiàn)了異步流程和OSGi的結(jié)合。術(shù)語“多個”指兩個或兩個以上,除非另有明確的限定。以上所述僅為本發(fā)明的優(yōu)選實施例而已,并不用于限制本發(fā)明,對于本領(lǐng)域的技術(shù)人員來說,本發(fā)明可以有各種更改和變化。凡在本發(fā)明的精神和原則之內(nèi),所作的任何修改、等同替換、改進等,均應(yīng)包含在本發(fā)明的保護范圍之內(nèi)。
      權(quán)利要求
      1.一種應(yīng)用于OSGi環(huán)境下的流程運行裝置,其特征在于,包括: 持久化單元,當檢測到流程中當前運行的第一節(jié)點和與其相鄰的即將運行的第二節(jié)點屬于不同模塊時,保存所述第一節(jié)點對應(yīng)的第一模塊的運行環(huán)境; 載入單元,當檢測到所述流程運行至所述第二節(jié)點時,在所述持久化單元中加載所述第二節(jié)點對應(yīng)的第二模塊的運行環(huán)境。
      2.根據(jù)權(quán)利要求1所述的應(yīng)用于OSGi環(huán)境下的流程運行裝置,其特征在于,還包括: 設(shè)置單元,根據(jù)接收到的設(shè)置指令,設(shè)置所述持久化單元的內(nèi)容。
      3.根據(jù)權(quán)利要求2所述的應(yīng)用于OSGi環(huán)境下的流程運行裝置,其特征在于,所述持久化單元的內(nèi)容包括數(shù)據(jù)庫和/或文件。
      4.根據(jù)權(quán)利要求1所述的應(yīng)用于OSGi環(huán)境下的流程運行裝置,其特征在于,所述載入單元包括: 運行環(huán)境查找子單元,查找所述持久化單元中是否保存有所述第二節(jié)點對應(yīng)的第二模塊的運行環(huán)境; 運行環(huán)境加載子單元,若檢測到所述環(huán)境查找子單元查找到所述第二模塊的運行環(huán)境,則直接在所述持久化單元中加載所述第二模塊的運行環(huán)境; 運行環(huán)境創(chuàng)建子單元,若檢測到所述運行環(huán)境查找單元未查找到所述第二模塊的運行環(huán)境,則通知OSGi系統(tǒng)創(chuàng)建所述第二模塊的運行環(huán)境,在創(chuàng)建完成后在所述持久化單元中加載所述第二模塊的運行環(huán)境。
      5.根據(jù)權(quán)利要求1至4中任一項所述的應(yīng)用于OSGi環(huán)境下的流程運行裝置,其特征在于,所述流程包括多個節(jié)點,所述多個節(jié)點位于多個模塊當中。
      6.一種應(yīng)用于OSGi環(huán)境下的流程運行方法,其特征在于,包括: 步驟302,當檢測到流程中當前運行的第一節(jié)點和與其相鄰的即將運行的第二節(jié)點屬于不同模塊時,在持久化單元中保存所述第一節(jié)點對應(yīng)的第一模塊的運行環(huán)境; 步驟304,當檢測到所述流程運行至所述第二節(jié)點時,在所述持久化單元中加載所述第二節(jié)點對應(yīng)的第二模塊的運行環(huán)境。
      7.根據(jù)權(quán)利要求6所述的應(yīng)用于OSGi環(huán)境下的流程運行方法,其特征在于,所述步驟302還包括: 根據(jù)接收到的設(shè)置指令,設(shè)置所述持久化單元的內(nèi)容。
      8.根據(jù)權(quán)利要求7所述的應(yīng)用于OSGi環(huán)境下的流程運行方法,其特征在于,所述持久化單元的內(nèi)容包括數(shù)據(jù)庫和/或文件。
      9.根據(jù)權(quán)利要求6所述的應(yīng)用于OSGi環(huán)境下的流程運行方法,其特征在于,所述步驟304具體包括: 查找所述持久化單元中是否保存有所述第二節(jié)點對應(yīng)的第二模塊的運行環(huán)境;以及 若查找到所述第二模塊的運行環(huán)境,則直接在所述持久化單元中加載所述第二模塊的運行環(huán)境;以及 若未查找到所述第二模塊的運行環(huán)境,則通知OSGi系統(tǒng)創(chuàng)建所述第二模塊的運行環(huán)境,在創(chuàng)建完成后在所述持久化單元中加載所述第二模塊的運行環(huán)境。
      10.根據(jù)權(quán)利要求6至9中任一項所述的應(yīng)用于OSGi環(huán)境下的流程運行方法,其特征在于,所述流程包括多個節(jié)點,所述多個節(jié)點位于多個模塊當中。
      全文摘要
      本發(fā)明提供了一種應(yīng)用于OSGi環(huán)境下的流程運行裝置,包括持久化單元,當檢測到流程中當前運行的第一節(jié)點和與其相鄰的即將運行的第二節(jié)點屬于不同模塊時,保存所述第一節(jié)點對應(yīng)的第一模塊的運行環(huán)境;載入單元,當檢測到所述流程運行至所述第二節(jié)點時,在所述持久化單元中加載所述第二節(jié)點對應(yīng)的第二模塊的運行環(huán)境。相應(yīng)地,本發(fā)明還提供了一種應(yīng)用于OSGi環(huán)境下的流程運行裝置。通過本發(fā)明的技術(shù)方案,可以解決異步流程中上下文環(huán)境會發(fā)生沖突的問題,從而避免流程數(shù)據(jù)傳遞失敗,實現(xiàn)了異步流程和OSGi的結(jié)合。
      文檔編號G06F9/445GK103164243SQ20131005555
      公開日2013年6月19日 申請日期2013年2月21日 優(yōu)先權(quán)日2013年2月21日
      發(fā)明者張道強 申請人:用友軟件股份有限公司
      網(wǎng)友詢問留言 已有0條留言
      • 還沒有人留言評論。精彩留言會獲得點贊!
      1