石少敏
【摘要】 通過對企業(yè)門戶、企業(yè)門戶網(wǎng)站及Web服務介紹,討論了用Web服務構建企業(yè)門戶網(wǎng)站的整個業(yè)務流程,為企業(yè)提供了決策支持服務。
【關鍵詞】 企業(yè)門戶;企業(yè)門戶網(wǎng)站;WSRP;WSXL;UDDI
一、企業(yè)門戶(Portal)
Portal是IT領域的新技術,是企業(yè)信息化工作的發(fā)展方向之一。Portal一詞是從Internet所衍生出來的,原來是“門戶網(wǎng)站”的意思,扮演人們上網(wǎng)后想要拜訪的第一個站臺。從面向應用領域的角度看,門戶可分為Internet門戶和企業(yè)門戶。人們對Internet門戶的認識比較一致,提供面向Internet用戶的服務的網(wǎng)站。對企業(yè)門戶認識與IT業(yè)有些名詞一樣,不同的專業(yè)人士和機構對之有不同的理解,并有很多術語用于描述企業(yè)為其客戶、合作伙伴和員工的方便而采用的“門戶。根據(jù)應用的具體功能不同又把企業(yè)門戶細分為信息門戶、知識門戶和應用門戶等。
1.企業(yè)信息門戶(Enterprise Information Portal,EIP )?;咀饔檬菫槿藗兲峁┢髽I(yè)信息。企業(yè)信息門戶提供了一個了解企業(yè)的訪問入口,所有訪問者都可以通過這個入口獲得個性化的信息和服務。
2.企業(yè)知識門戶(Enterprise Knowledge Portal,EKP)。是一個平臺,該平臺是知識加工平臺、決策平臺、知識發(fā)布與獲取平臺的集成,它使企業(yè)各部門職員之間的信息共享和交流更加流暢。企業(yè)知識門戶的重點是企業(yè)信息的加工與處理。
3.企業(yè)應用門戶(Enterprise Application Portal,EAP )。實際上是對企業(yè)業(yè)務流程的集成。它以商業(yè)流程和企業(yè)應用為核心,把商業(yè)流程中功能不同的應用模塊通過門戶技術集成在一起。
以上三類門戶雖然在側(cè)重點有所不同,但隨著企業(yè)信息系統(tǒng)復雜程度的增加,越來越多的企業(yè)需要能夠?qū)⒁陨先愰T戶有機地整合在一起的通用型企業(yè)門戶,把它們統(tǒng)一稱為企業(yè)門戶。企業(yè)門戶能夠通過超越現(xiàn)有分散的應用環(huán)境實現(xiàn)這個目標,把原來不同的內(nèi)部部門的分割、不同的企業(yè)內(nèi)外的分割,通過系統(tǒng)的集成使其相互關系連接到一起,形成廣泛的,相互關聯(lián)的企業(yè)應用環(huán)境,形成真正的企業(yè)合力。它不但能降低企業(yè)的運營成本,通過豐富的企業(yè)信息資源吸引新客戶,密切老客戶的關系,更重要的是縮短企業(yè)響應市場時間,使企業(yè)在激烈的市場競爭中占據(jù)最有利的地位。
二、構建企業(yè)門戶網(wǎng)站的Web服務
1.企業(yè)門戶網(wǎng)站與Web服務
隨著Web服務的發(fā)展,IBM、微軟、Sybase、CA、Sun等五大門戶廠商推出的門戶方案也開始支持XML、簡單對象訪問協(xié)議(SOAP:Simple Object Access Protocol)、WEB服務描述語言(WSDL: Web Services Description Language)、統(tǒng)一描述、發(fā)現(xiàn)和集成協(xié)議(UDDI:Universal Description, Discovery and Integration)等標準,還有的門戶方案中整合了Portlets、PNP等組件。Portlet 是在門戶中運行的為門戶提供內(nèi)容的組件,提供對應用程序、基于Web的內(nèi)容和其它資源的訪問。Web頁面、Web 服務、應用程序和聯(lián)合內(nèi)容提供可通過Portlet來訪問。
門戶網(wǎng)站是用戶訪問不同來源的信息和應用程序的焦點。門戶網(wǎng)站從本地或遠程數(shù)據(jù)源(例如,從數(shù)據(jù)庫、事務系統(tǒng)、聯(lián)合內(nèi)容提供者或遠程Web站點)獲取信息。它們加工此信息并將其聚集到復合頁中,用一種簡潔、容易的使用形式為用戶提供信息。除了純粹的信息之外,很多門戶網(wǎng)站還包括一些應用程序,如電子郵件、日程、管理器、銀行業(yè)務、帳單顯示等。各種不同的信息和應用程序需要不同的加工和選擇機制,但它們都依賴于門戶網(wǎng)站的基礎結(jié)構,并影響門戶網(wǎng)站所擁有的數(shù)據(jù)和資源。幾乎目前所有的門戶網(wǎng)站實現(xiàn)都提供一種組件模型,它允許將稱為 Portlet的組件插入到門戶網(wǎng)站基礎結(jié)構中。
2.用Web服務構建企業(yè)門戶網(wǎng)站
Web服務技術是一種在Internet環(huán)境下松散耦合的Web應用之間進行互相調(diào)用和互相集成的技術框架。Web服務體驗語言(Web Services Experience Language,WSXL)和Web 服務遠程門戶(Web Services Remote Portals,WSRP)為當Web服務的組件發(fā)生更改時,可以重新配置和調(diào)整服務提供了靈活性。WSRP目前是 WSXL 的一部分;WSRP 定義了稱為遠程Portlet Web服務(Remote Portlet Web services)的特殊WSXL組件。這兩個規(guī)范都反映了對Web服務的人性化應用程序進行標準化時展開合作的趨勢。
為了使將WSRP服務動態(tài)集成到門戶網(wǎng)站中盡可能簡單,我們需要集成一個查找和綁定功能??梢詫⒁粋€UDDI注冊中心當作發(fā)布和查找WSRP服務的注冊中心。這個 UDDI 注冊中心可以是一個局限在公司網(wǎng)絡中的專用UDDI,也可以是公用UDDI目錄,希望提供或使用WSRP服務的客戶機應用程序可以執(zhí)行(如圖1所示操作)。
(1)將Portlet作為WSRP服務發(fā)布:Portal管理員使用發(fā)布函數(shù)將portlet作為 WSRP 服務發(fā)布到UDDI注冊中心。如門戶網(wǎng)站的管理函數(shù)可以讀取門戶網(wǎng)站的portlet 注冊中心,并顯示所有可用的portlet,portlet管理員就可以選擇要發(fā)布的portlet 了。
(2)查找和綁定遠程Portlet Web服務:查找和綁定管理函數(shù)讓管理員可以搜索UDDI注冊中心來查找WSRP服務、對于一個選定的服務,管理函數(shù)可以在portlet注冊中心中自動生成一個綁定到該服務的portlet代理。
(3)選擇代表WSRP服務的portlet代理:在管理員將portlet代理綁定到WSRP服務之后,用戶就可以將portlet代理放在他們的一個個頁面上去了。
3.Web Service 構架門戶網(wǎng)站整個業(yè)務流程
Web Service構架門戶網(wǎng)站業(yè)務流程(如圖2)示例了用Web Service 構架門戶網(wǎng)站整個業(yè)務流程。當Portlet接收一個需要交互式遠程服務請求時,Portlet通過SOAP Proxy產(chǎn)生應答;Proxy包裝這些參數(shù),轉(zhuǎn)換為SOAP的請求,并將請求送給遠程Web Service。Web Service通過SOAP Wrapper來接收SOAP請求,還原這些參數(shù),使用參數(shù)完成本地服務。當web Service返回結(jié)果時,SOAP Wrapper 將結(jié)果數(shù)據(jù)轉(zhuǎn)換為SOAP的響應,并把它送回到SOAP Proxy,SOAP Proxy最后還原成結(jié)果數(shù)據(jù),并以一個適當?shù)男问椒祷氐皆日埱蟮膒ortlet。
為了簡化在Portlets中使用Web Service,象IBM等公司提供一個Web Service Proxy產(chǎn)生器工具,該工具能夠從一個WSDL接口文檔自動產(chǎn)生客戶代碼,并且實現(xiàn)可選擇的服務實施文檔。如果只有一個服務接口文檔被用,服務代理產(chǎn)生器工具產(chǎn)生一個通用的服務代理,它能被用到存取給定的任何服務實施。如果一個服務接口和一個服務實施都被用,服務代理產(chǎn)生器工具產(chǎn)生一個服務代理只能存取服務實施。服務代理包含在服務接口文檔里面,是一個特定的綁定的代碼。如綁定的是一個SOAP綁定,然后服務代理將會包含用來啟動服務的SOAP客戶代碼。
當一個訪問遠程Portlet頁面發(fā)生請求時,Portlet使用一個Portlet代理來實現(xiàn)遠程Portlet Web Service ,它是通過Remote Portlet Invocation(RPI)協(xié)議(如圖3),portlet啟動portlet代理完全和它會啟動本地portlet一樣,通過Portlet請求和Portlet 響應。portlet代理在內(nèi)部實現(xiàn)一個SOAP代理,轉(zhuǎn)換所有的參數(shù)作為一個SOAP代理的請求,并發(fā)送給遠程的Portlet Web Service 主機。在Web Service 旁邊的SOAP Wrapper 還原出所有的信息,這些信息是在遠程Portlet上的請求和響應。
是直接通過一個入口或門(Portal),還是間接的經(jīng)過Web Service接口?對于遠程Portlet來說,它是透明的。在每個情況,它處理輸入?yún)?shù)而且返回一個portlet響應。
SOAP Wrapper轉(zhuǎn)換進入SOAP響應之內(nèi)的響應,且把它送到SOAP代理,SOAP代理還原出這些響應,最后通過 Portlet代理返回原先的Portlet 響應。這個響應也是原始的通過Portlet 引擎的請求。
通過對構建企業(yè)門戶網(wǎng)站的Web服務技術探討,給出了Web Service構架門戶網(wǎng)站整個業(yè)務流程簡單闡述。企業(yè)門戶網(wǎng)站從內(nèi)外兩個角度提供了集成的企業(yè)信息平臺解決方案。一方面它為企業(yè)內(nèi)部員工提供了信息交換的平臺,另一方面成為企業(yè)與客戶、供應商之間的信息交換、業(yè)務推廣和服務的平臺,使的B2B電子商務發(fā)展成為可能。
參考文獻
[1]柴曉路.Web服務架構與開放互操作技術[M].北京:清華大學出版社,2002
[2]SamtaniG,Sadhwani.B2BiandWeb:Anintimidating Task.Web Services Architect,2002(1):30~32
[3]企業(yè)門戶網(wǎng)站/http://www.sytech.com.cn,2003
[4]Websphere Portal Server and Web Services whitepaper, Thomas Thomas Schaeck IBM Software Group,2001
[5]Web Services Conceptual Architecture,Web Services Architetcture Team, IBM Software Group, 2001