專利名稱:基于組件的用戶應用中對組件集合重新綁定的系統和方法
技術領域:
本發明涉及基于組件的用戶應用的領域,并且更具體地,涉及不同組件的集合(assembly)以產生基于組件的用戶應用。
背景技術:
基于組件的用戶應用解決整體統一應用的僵化屬性的問題,其中整體統一應用被編程來支持特定應用需要而沒有提供基本的靈活性。在整體統一應用中,如果特定應用需要變化,則很少能做到。通過比較,在基于組件的計算中,不同組件提供應用功能性的原子元件。可以將各個組件與其它組件進行組合以動態地集合一個應用,該應用甚至在應用需要變化時也能提供特定類型的功能性以靈活地支持特定應用需要。基于組件的計算實現的例子包括協同計算應用和門戶計算環境。
門戶框架支持基于組件的模型,該基于組件的模型用于構建面向用戶的應用。門戶應用表示面向用戶組件的集合,所述面向用戶組件可以按照不同的方式來組合以產生不同應用。門戶小組件(portlet)是作為一部分包含在門戶頁面中的可見活動著的,并且面向用戶的組件。類似于窗口操作系統的圖形窗戶范例,在門戶中的每個門戶小組件占據門戶頁面的一部分,通過該門戶頁面的這一部分,該門戶小組件可以顯示來自門戶小組件通道的相關內容。典型的門戶小組件可以實現為通過門戶服務器執行的服務器側腳本。
門戶服務器是用于實現基于門戶的萬維網站在公共互聯網或者專用內聯網上分布的計算機程序。重要的是,任意一個本領域普通技術人員將意識到所有傳統門戶服務器的簽名特性可以包括按照統一方式的來自單個可分布頁面內的若干門戶小組件應用的內容的聚合(aggregation)。為此,可以通過由門戶服務器分布的到請求客戶端計算設備的門戶小組件用戶接口來表示門戶頁面內的每個門戶小組件應用。
協同式門戶小組件預訂一個模型,該模型用于利用屬性代理聲明、公布并且相互共享信息。門戶小組件可以通過公布可以由門戶小組件(作為提供方或接收方)共享的打字的數據項或屬性來預訂該代理。通常提供屬性的門戶小組件被稱為源門戶小組件,接收屬性的門戶小組件被稱為目標門戶小組件,由源門戶小組件公布的屬性被稱為輸出屬性,以及由目標門戶小組件接收的屬性稱為輸入屬性。
通過稱為綁定的持久連接可以在門戶小組件之間交換屬性。使用該綁定,可以在連接的門戶小組件之間實現屬性轉移。在運行時間,屬性代理可以將來自源門戶小組件的輸出屬性的數據類型與來自一個或者多個目標門戶小組件的輸入屬性的數據類型相匹配,其中所述一個或者多個目標門戶小組件通過分離的綁定耦合到該源門戶小組件。如果確定相匹配,則門戶小組件能夠共享屬性。正如本領域所知道的,可以通過使用門戶小組件綁定工具,或者通過建立用于源門戶小組件的點擊動作事件來啟動通過綁定的實際屬性轉移。
當前,門戶小組件集合與特定綁定方案靜態相關聯。雖然在許多情況下使用特定綁定方案,靜態集合門戶小組件是有用的,但是,可能會出現以下情況,其將受益于使用綁定方案的門戶小組件集合的更動態關聯,以提供產生應用方面的靈活性。
發明內容
本發明的實施例針對關于使用基于組件的模型來對應用進行集合的現有技術的缺陷,提供了一種新穎且非顯而易見的方法、系統和計算機程序,用于對基于組件的計算環境中對基于組件的集合進行重新綁定。在一個實施例中,用于重新綁定基于組件的用戶應用的組件集合的數據處理系統可以包括組件聚合應用,用于將多個組件聚合在一個聚合中;屬性代理,耦合到組件聚合應用并且用于在聚合中所選擇的組件之間建立綁定;以及重新綁定邏輯。該重新綁定邏輯可以包括使得能夠對聚合中所選擇的組件進行重新綁定的程序代碼。
在實施例的一個方面中,組件聚合應用可以是門戶服務器,以及組件可以是門戶小組件。在實施例的另一方面中,組件聚合應用可以是協同環境,并且組件可以是協同應用組件。在任意一個環境中,重新綁定邏輯的程序代碼可以實現為基于對聚合的表征變化的響應來對聚合中所選擇的組件進行重新綁定。例如,聚合的表征變化可以是聚合的用戶角色的變化。作為另一個例子,聚合的表征變化可以是對于聚合組件的活動的變化。
在本發明的另一個實施例中,用于對基于組件的用戶應用的組件集合的重新綁定方法可以包括選擇組件聚合中用于集合的多個組件。可選地,該方法還包括根據在模板中定義的第一綁定方案來綁定組件。最后,響應于檢測到聚合的表征變化,可以根據在另一個模板中定義的第二綁定方案對組件進行重新綁定。在這方面,響應于檢測到聚合的表征變化而根據第二綁定方案對組件進行綁定可以包括響應于檢測到聚合的用戶角色的變化,或者響應于檢測到聚合組件的活動的變化,而根據第二綁定方案來對組件進行綁定。
本發明的附加方面的一部分在下面的說明中有所闡述,一部分通過這些說明將變得顯而易見,或者通過實踐本發明可以了解到。借助于在所附權利要求中特別指出的單元或者組合,將實現和獲得本發明的這些方面。應當理解,上述總的說明和以下詳細說明僅僅是示例性和解釋性的,而并不是對所要求保護的本發明的限制。
與說明書相結合并構成其一部分的附圖示出了本發明的實施例,并和說明部分一起用于解釋本發明的原理。此處示出的實施方式是當前優選的,但是應當理解,本發明不限于所示出的精確配置和手段,其中,圖1是用于在基于組件的用戶應用中對組件的集合進行重新綁定的數據處理系統的示意圖;圖2A是用于在協同環境中在基于組件的用戶應用中對組件的集合進行重新綁定的過程的流程圖;以及圖2B是用于在門戶環境中在基于組件的用戶應用中對組件的集合進行重新綁定的過程的流程圖。
具體實施例方式
本發明的實施例提供了一種用于在基于組件的用戶應用中對組件的集合進行重新綁定的方法、系統和計算機程序產品。根據本發明的一種實施例,響應于基于組件的用戶應用的使用中的特性變化可以重新綁定組件的集合的綁定方案。特性變化可以包括基于組件的用戶應用的用戶角色的變化。可選地,特性變化可以包括基于組件的用戶應用的活動的變化。按這種方式,根據基于組件的用戶應用的特性變化,在綁定的門戶小組件之間可以變化交換的屬性。
在更具體的示例中,圖1是用于在基于組件的用戶應用中對組件的集合進行重新綁定的數據處理系統的示意圖。數據處理系統可以包括主計算平臺110,其通過計算機通信網絡180耦合到一個或者多個客戶端計算設備190。該主計算平臺110可以包括組件聚合應用120,例如用于實現將一個或者多個組件130聚合到聚合140中的門戶服務器。作為另一個例子,聚合應用120可以包括工作場所服務器,支持生成不同協同組件130的協同環境140,例如即時消息、聊天室、共享文檔等。
明顯地,正如本領域中眾所周知的,可以通過屬性代理150,為聚合140的組件130建立綁定方案160。可選地,可以在綁定模板170中定義綁定方案160。綁定方案160可以允許通過屬性代理150綁定在一起的源組件和目標組件之間的屬性共享。即使這樣,根據本發明,可以例如通過使用附加綁定模板170,為聚合140的組件130定義附加綁定方案。在這方面,可以將重新綁定邏輯200耦合到屬性代理150,并且重新綁定邏輯200可以包括程序代碼,該程序代碼用于實現根據聚合140的表征的變化來建立用于聚合140的組件130的不同綁定方案。
聚合140的表征的示例性變化可以包括通過計算機通信網絡180訪問聚合140的用戶角色的變化。聚合140的表征的其它示例性變化可以包括利用聚合140的組件130進行的活動的變化,例如工作流的變化。根據上述示例性實施例,對于本領域技術人員來說,聚合140的表征的其它變化是明顯的。
在示例性實施例的更具體描述中,圖2A是描述用于在協同環境中在基于組件的用戶應用中對組件的集合進行重新綁定的處理的流程圖。在塊205開始,可以指定一組協同應用,將其用于協同空間。協同應用可以包括那些意為不同用戶所使用和修改的應用,并且可以包括共享文檔庫、實時通信工具等等。
在塊210中,可以為協同空間識別用戶。隨后,在塊215中,可以為協同空間的用戶確定角色。根據該角色,在塊220,可以識別綁定圖案,以及在圖225中,可以將識別的綁定圖案應用到協同空間的組件。具體地,可以在協同空間中的不同組件之間建立不同綁定,以便在協同空間中提供源組件和目標組件之間的屬性共享。隨后,在塊230中,可以激活協同空間為用戶所用。
在判斷塊235中,可以確定對于用戶是否發生角色變化。如果沒有,處理可以繼續,直到檢測到角色變化。當在判斷塊235中檢測到角色變化時,在塊240,可以識別新的角色,并且可以在塊220中為新的角色檢索新的綁定圖案。隨后,在塊225中,可以將新的綁定圖案應用到協同空間中的組件,并且在塊230,激活新近重新綁定的協同空間為用戶所用。對于在判斷塊235中檢測到的每個角色變化,可以重復該處理。
現在轉到圖2B,示出了另一個示例性實施例,其描述用于在門戶環境中在基于組件的用戶應用中對組件的集合進行重新綁定的處理的流程圖。在塊250開始,可以指定一組門戶小組件組件,在門戶頁面中使用。門戶小組件組件可以包括那些意為用戶通過門戶頁面所使用和修改的門戶小組件。
在塊255,可以為門戶頁面識別活動。根據活動,在塊260中,可以識別綁定圖案,并且在塊265中,可以將識別的綁定圖案應用到門戶頁面的門戶小組件。具體地,可以在門戶頁面中的不同門戶小組件之間建立不同綁定,以便在門戶頁面中提供源門戶小組件和目標門戶小組件之間的屬性共享。隨后,在塊270,可以呈遞門戶頁面為請求的用戶所用。
在判斷塊275中,可以確定是否對于門戶頁面發生了活動或者工作流變化。如果沒有,則處理可以繼續,直到檢測到活動或者工作流變化。當在判斷塊275檢測到活動或者工作流變化時,在塊280,可以識別新的活動或者工作流,并且在塊260中,可以為新的活動或者工作流檢索新的綁定圖案。隨后,在塊265中,可以將新的綁定圖案應用到門戶頁面中的門戶小組件,并且在塊270中,可以呈現新近重新綁定的門戶頁面為請求的用戶所用。對于在判斷塊275中檢測到的活動或者工作流的每個變化,可以重復該處理。
本領域技術人員將意識到不像在傳統基于組件的用戶應用中的組件的靜態綁定,通過本發明的動態重新綁定,可以為在基于組件的用戶應用中的組件之間的交互提供更大的靈活性。而且,根據所認可的基于組件的用戶應用的表征變化來應用新綁定圖案可以為基于組件的用戶應用提供額外的自動性和靈活性水平。
本發明的實施例可以采用全部硬件實施例、全部軟件實施例或者包括硬件和軟件單元的實施例的形式。在優選實施例中,本發明實現為軟件,其包括但不限于固件、駐留軟件、微代碼等等。而且,本發明可以采用計算機程序產品的形式,該計算機程序產品可以從提供程序代碼的計算機可用或者計算機可讀介質來訪問,其中該程序代碼為計算機或者任何指令執行系統所用,或者與計算機或者任何指令執行系統相結合。
為了該說明的目的,計算機可用或者計算機可讀介質可以是可以包含、存儲、傳送、傳播、或者輸送為指令執行系統、裝置或設備所用或者與其相結合的程序的任何裝置。介質可以是電的、磁的、光的、電磁的、紅外的、或者半導體系統(或者裝置或者設備)或者傳播介質。計算機可讀介質的例子包括半導體或者固態存儲器、磁帶、可移除計算機盤、隨機訪問存儲器(RAM)、只讀存儲器(ROM)、硬磁盤和光盤。光盤的當前例子包括光盤-只讀存儲器(CD-ROM)、光盤-讀/寫(CD-R/W)和DVD。
適用于存儲和/或執行程序代碼的數據處理系統將包括至少一個處理器,該處理器直接或者通過系統總線間接耦合到存儲器單元。存儲器單元可以包括在程序代碼實際執行期間所用的本地存儲器、大容量存儲器和高速緩沖存儲器,該高速緩沖存儲器提供至少一些程序代碼的臨時存儲器以便減少在執行期間必須從大容量存儲器檢索代碼的次數。輸入/輸出或者I/O設備(包括但不限于鍵盤、顯示器、定位設備等等)可以直接或者通過中間的I/O控制器間接耦合到系統。網絡適配器也可以耦合到系統,以使數據處理系統通過中間的專用或者公用網絡耦合到其他數據處理系統或者遠程打印機或者存儲設備。調制解調器、纜線調制解調器以及以太網卡只是目前可以用的網絡適配器類型中的一部分。
權利要求
1.一種用于對基于組件的用戶應用的組件集合進行重新綁定的數據處理系統,該系統包括組件聚合應用,用于將多個組件聚合在一個聚合中;屬性代理,耦合到該組件聚合應用,并且用于在該聚合中所選擇的組件之間建立綁定;以及重新綁定邏輯,包括實現對該聚合中所選擇的組件進行重新綁定的程序代碼。
2.根據權利要求1的系統,其中該組件聚合應用是門戶服務器,以及所述組件是門戶小組件。
3.根據權利要求1的系統,其中該組件聚合應用是協同環境,并且所述組件是協同應用組件。
4.根據權利要求1的系統,其中該重新綁定邏輯的程序代碼實現為基于對該聚合的表征變化的響應來對該聚合中所選擇的組件進行重新綁定。
5.根據權利要求4的系統,其中該聚合的表征變化是該聚合的用戶角色的變化。
6.根據權利要求4的系統,其中該聚合的表征變化是對于該聚合的組件的活動的變化。
7.根據權利要求4的系統,其中該重新綁定邏輯的程序代碼實現為應用綁定模板到該聚合,該綁定模板對應于該聚合的表征變化。
8.一種用于對基于組件的用戶應用的組件集合進行重新綁定的方法,該方法包括選擇組件聚合中用于集合的多個組件;根據第一綁定方案來綁定所述組件;以及響應于檢測到該聚合的表征變化,來根據第二綁定方案對所述組件進行綁定。
9.根據權利要求8的方法,其中選擇組件聚合中用于集合的多個組件包括選擇門戶頁面聚合中用于集合的多個門戶小組件組件。
10.根據權利要求8的方法,其中選擇組件聚合中用于集合的多個組件包括選擇協同環境中的聚合中用于集合的多個協同組件。
11.根據權利要求8的方法,其中響應于檢測到該聚合的表征的變化來根據第二綁定方案對組件進行綁定包括響應于檢測到對于該聚合的用戶角色的變化,根據第二綁定方案來對組件進行綁定。
12.根據權利要求8的方法,其中響應于檢測到該聚合的表征的變化來根據第二綁定方案對組件進行綁定包括響應于檢測到對于該聚合的組件活動的變化,根據第二綁定方案來對組件進行綁定。
全文摘要
本發明的實施例針對關于使用基于組件的模型進行應用集合的現有技術的缺陷,提供了一種方法、系統和計算機程序產品,用于在基于組件的計算環境中對基于組件的集合進行重新綁定。在一個實施例中,用于重新綁定基于組件的用戶應用的組件集合的數據處理系統可以包括組件聚合應用,用于將多個組件聚合在一個聚合中;屬性代理,耦合到組件聚合應用并且用于在聚合中所選擇的組件之間建立綁定;以及重新綁定邏輯。該重新綁定邏輯可以包括實現為對聚合中所選擇的組件進行重新綁定的程序代碼。
文檔編號G06F9/44GK1963751SQ20061014379
公開日2007年5月16日 申請日期2006年11月6日 優先權日2005年11月7日
發明者邁克爾·丹尼斯·費斯米爾, 邁克爾·C·萬德斯基, 尚卡·拉馬斯沃邁, 埃里克·倫納德·馬塞勒, 帕特里克·加布里埃爾·麥高恩, 安伯·羅伊·喬德赫賴 申請人:國際商業機器公司