【摘要】 通過對企業門戶、企業門戶網站及Web服務介紹,討論了用Web服務構建企業門戶網站的整個業務流程,為企業提供了決策支持服務。
【關鍵詞】 企業門戶;企業門戶網站;WSRP;WSXL;UDDI
一、企業門戶(Portal)
Portal是IT領域的新技術,是企業信息化工作的發展方向之一。Portal一詞是從Internet所衍生出來的,原來是“門戶網站”的意思,扮演人們上網后想要拜訪的第一個站臺。從面向應用領域的角度看,門戶可分為Internet門戶和企業門戶。人們對Internet門戶的認識比較一致,提供面向Internet用戶的服務的網站。對企業門戶認識與IT業有些名詞一樣,不同的專業人士和機構對之有不同的理解,并有很多術語用于描述企業為其客戶、合作伙伴和員工的方便而采用的“門戶。根據應用的具體功能不同又把企業門戶細分為信息門戶、知識門戶和應用門戶等。
1.企業信息門戶(Enterprise Information Portal,EIP )。基本作用是為人們提供企業信息。企業信息門戶提供了一個了解企業的訪問入口,所有訪問者都可以通過這個入口獲得個性化的信息和服務。
2.企業知識門戶(Enterprise Knowledge Portal,EKP)。是一個平臺,該平臺是知識加工平臺、決策平臺、知識發布與獲取平臺的集成,它使企業各部門職員之間的信息共享和交流更加流暢。企業知識門戶的重點是企業信息的加工與處理。
3.企業應用門戶(Enterprise Application Portal,EAP )。實際上是對企業業務流程的集成。它以商業流程和企業應用為核心,把商業流程中功能不同的應用模塊通過門戶技術集成在一起。
以上三類門戶雖然在側重點有所不同,但隨著企業信息系統復雜程度的增加,越來越多的企業需要能夠將以上三類門戶有機地整合在一起的通用型企業門戶,把它們統一稱為企業門戶。企業門戶能夠通過超越現有分散的應用環境實現這個目標,把原來不同的內部部門的分割、不同的企業內外的分割,通過系統的集成使其相互關系連接到一起,形成廣泛的,相互關聯的企業應用環境,形成真正的企業合力。它不但能降低企業的運營成本,通過豐富的企業信息資源吸引新客戶,密切老客戶的關系,更重要的是縮短企業響應市場時間,使企業在激烈的市場競爭中占據最有利的地位。
二、構建企業門戶網站的Web服務
1.企業門戶網站與Web服務
隨著Web服務的發展,IBM、微軟、Sybase、CA、Sun等五大門戶廠商推出的門戶方案也開始支持XML、簡單對象訪問協議(SOAP:Simple Object Access Protocol)、WEB服務描述語言(WSDL: Web Services Description Language)、統一描述、發現和集成協議(UDDI:Universal Description, Discovery and Integration)等標準,還有的門戶方案中整合了Portlets、PNP等組件。Portlet 是在門戶中運行的為門戶提供內容的組件,提供對應用程序、基于Web的內容和其它資源的訪問。Web頁面、Web 服務、應用程序和聯合內容提供可通過Portlet來訪問。
門戶網站是用戶訪問不同來源的信息和應用程序的焦點。門戶網站從本地或遠程數據源(例如,從數據庫、事務系統、聯合內容提供者或遠程Web站點)獲取信息。它們加工此信息并將其聚集到復合頁中,用一種簡潔、容易的使用形式為用戶提供信息。除了純粹的信息之外,很多門戶網站還包括一些應用程序,如電子郵件、日程、管理器、銀行業務、帳單顯示等。各種不同的信息和應用程序需要不同的加工和選擇機制,但它們都依賴于門戶網站的基礎結構,并影響門戶網站所擁有的數據和資源。幾乎目前所有的門戶網站實現都提供一種組件模型,它允許將稱為 Portlet的組件插入到門戶網站基礎結構中。
2.用Web服務構建企業門戶網站
Web服務技術是一種在Internet環境下松散耦合的Web應用之間進行互相調用和互相集成的技術框架。Web服務體驗語言(Web Services Experience Language,WSXL)和Web 服務遠程門戶(Web Services Remote Portals,WSRP)為當Web服務的組件發生更改時,可以重新配置和調整服務提供了靈活性。WSRP目前是 WSXL 的一部分;WSRP 定義了稱為遠程Portlet Web服務(Remote Portlet Web services)的特殊WSXL組件。這兩個規范都反映了對Web服務的人性化應用程序進行標準化時展開合作的趨勢。
為了使將WSRP服務動態集成到門戶網站中盡可能簡單,我們需要集成一個查找和綁定功能。可以將一個UDDI注冊中心當作發布和查找WSRP服務的注冊中心。這個 UDDI 注冊中心可以是一個局限在公司網絡中的專用UDDI,也可以是公用UDDI目錄,希望提供或使用WSRP服務的客戶機應用程序可以執行(如圖1所示操作)。

(1)將Portlet作為WSRP服務發布:Portal管理員使用發布函數將portlet作為 WSRP 服務發布到UDDI注冊中心。如門戶網站的管理函數可以讀取門戶網站的portlet 注冊中心,并顯示所有可用的portlet,portlet管理員就可以選擇要發布的portlet 了。
(2)查找和綁定遠程Portlet Web服務:查找和綁定管理函數讓管理員可以搜索UDDI注冊中心來查找WSRP服務、對于一個選定的服務,管理函數可以在portlet注冊中心中自動生成一個綁定到該服務的portlet代理。
(3)選擇代表WSRP服務的portlet代理:在管理員將portlet代理綁定到WSRP服務之后,用戶就可以將portlet代理放在他們的一個個頁面上去了。
3.Web Service 構架門戶網站整個業務流程

Web Service構架門戶網站業務流程(如圖2)示例了用Web Service 構架門戶網站整個業務流程。當Portlet接收一個需要交互式遠程服務請求時,Portlet通過SOAP Proxy產生應答;Proxy包裝這些參數,轉換為SOAP的請求,并將請求送給遠程Web Service。Web Service通過SOAP Wrapper來接收SOAP請求,還原這些參數,使用參數完成本地服務。當web Service返回結果時,SOAP Wrapper 將結果數據轉換為SOAP的響應,并把它送回到SOAP Proxy,SOAP Proxy最后還原成結果數據,并以一個適當的形式返回到原先請求的portlet。
為了簡化在Portlets中使用Web Service,象IBM等公司提供一個Web Service Proxy產生器工具,該工具能夠從一個WSDL接口文檔自動產生客戶代碼,并且實現可選擇的服務實施文檔。如果只有一個服務接口文檔被用,服務代理產生器工具產生一個通用的服務代理,它能被用到存取給定的任何服務實施。如果一個服務接口和一個服務實施都被用,服務代理產生器工具產生一個服務代理只能存取服務實施。服務代理包含在服務接口文檔里面,是一個特定的綁定的代碼。如綁定的是一個SOAP綁定,然后服務代理將會包含用來啟動服務的SOAP客戶代碼。
當一個訪問遠程Portlet頁面發生請求時,Portlet使用一個Portlet代理來實現遠程Portlet Web Service ,它是通過Remote Portlet Invocation(RPI)協議(如圖3),portlet啟動portlet代理完全和它會啟動本地portlet一樣,通過Portlet請求和Portlet 響應。portlet代理在內部實現一個SOAP代理,轉換所有的參數作為一個SOAP代理的請求,并發送給遠程的Portlet Web Service 主機。在Web Service 旁邊的SOAP Wrapper 還原出所有的信息,這些信息是在遠程Portlet上的請求和響應。

是直接通過一個入口或門(Portal),還是間接的經過Web Service接口?對于遠程Portlet來說,它是透明的。在每個情況,它處理輸入參數而且返回一個portlet響應。
SOAP Wrapper轉換進入SOAP響應之內的響應,且把它送到SOAP代理,SOAP代理還原出這些響應,最后通過 Portlet代理返回原先的Portlet 響應。這個響應也是原始的通過Portlet 引擎的請求。
通過對構建企業門戶網站的Web服務技術探討,給出了Web Service構架門戶網站整個業務流程簡單闡述。企業門戶網站從內外兩個角度提供了集成的企業信息平臺解決方案。一方面它為企業內部員工提供了信息交換的平臺,另一方面成為企業與客戶、供應商之間的信息交換、業務推廣和服務的平臺,使的B2B電子商務發展成為可能。
參考文獻
[1]柴曉路.Web服務架構與開放互操作技術[M].北京:清華大學出版社,2002
[2]SamtaniG,Sadhwani.B2BiandWeb:Anintimidating Task.Web Services Architect,2002(1):30~32
[3]企業門戶網站/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