摘 要:針對當前3G業務平臺統一、面向服務的發展需求,提出以Portal,Web Service兩種技術為基礎的增值業務門戶的實現方法,介紹Web Service作為接口技術在增值業務門戶與業務管理平臺互通中的具體應用,并針對業務產品/產品包訂購的需求,給出基于Apache Axis的接口設計與實現過程。其統一、可定制的管理方式,為今后運營商的門戶提供了新的設計思路與實踐基礎。
關鍵詞:Axis;Portal;Web Service;增值業務平臺
中圖分類號:TP311文獻標識碼:B
文章編號:1004-373X(2008)22-067-03
Interface Design of Service Portal and Management Platform Based on Web Service
DENG Zhongliang,LIN Qing,LI Laixin
(School of Electronic Engineering,Beijing University of Posts and Telecommunications,Beijing,100876,China)
Abstract:In allusion to the requirement of development for the unified and service-oriented 3G service management platform,the article brings forward a method,which is based on Portal and Web Service,to implement the Value-added portal.It illustrates the practical application of Web Service as the interface technology,in the interconnection between the portal of value-added service and service management platform,and aiming at the requirement of services orders,it makes a solution for the interface design and implementation.Its management method which is unified and custom-built provides a new way and practice groundwork for the portal design of telecom operator in the future.
Keywords:Axis;Portal;Web Service;value-added service management platform
隨著電信行業不斷發展進步,技術的革新將電信服務帶入了更為廣闊的市場領域。電信產業的價值鏈由單一模式日趨復雜化,傳統的電信關注點從網絡層提升到了業務層,電信服務重心由傳統的話音通訊服務轉向移動增值業務,多元化服務涵蓋各行各業。為跟進這樣的變化,亟需一個統一的、面向服務的數據業務平臺。
一方面移動增值業務平臺的使用者包括移動運營商、終端用戶、內容服務提供商;另一方面,從系統構成上來看,該平臺涵蓋多個功能模塊和各種業務子系統。針對不同的使用者,利用門戶技術為其提供個性化的平臺入口點,Web Service接口技術的應用又能靈活配置入口點與平臺子系統間的對應聯系。
1 技術概述
1.1 Portal門戶技術
Portal是一種基于Web的應用,它主要提供個性化、單點登錄、不同來源的內容整合,并作為信息系統表現層的宿主。
Portal的功能可以分為3個主要方面:
(1) Portlet容器:負責初始化和銷毀portlet,向portlet傳送用戶請求并合成響應。
(2) 內容聚集:整合由各種portlet應用生成的內容。
(3) 公共服務:
① 單點登錄:登錄portal服務器1次就可以訪問所有其他的應用,無需分別登錄每一個應用。而且,Portal服務器會為用戶分配一個通行證庫。在某一應用登陸后,用戶名和密碼將以加密的方式存儲在通行證庫中,再次登陸時,portal服務器會自動從通行證庫中讀取通行證登錄到相應服務器上。
② 個性化定制:用戶可以根據自身喜好決定標題條的顏色和控制圖標;用戶可以決定頁面上有哪些portlet。例如,如果一個體育迷,可能會用一個能提供球隊最新信息的portlet取代股票和新聞portlet。
1.2 Web Service技術
Web Service[1]是由URI(Uniform Resource Identifier,統一資源標識符)標識的軟件應用程序,其接口和綁定可以通過可擴展標記語言(XML)構件進行定義、描述和發現。Web Service支持通過基于因特網的協議使用基于XML的消息與其他軟件應用程序直接交互。
Web服務具有跨平臺、跨語言的特性,應用于快速、低成本的異構網絡集成方案。
Web Service采用面向服務(Service Oriented Architecture,SOA)的體系結構,通過服務提供者、請求者和注冊中心等實體之間的交互實現服務調用(見圖1)。

Web Services 服務[2,3]提供方通過WSDL(Web Services Description Language)描述所提供的服務,并將這一描述告知Web Services 注冊服務器。注冊服務器依據WSDL 的描述,依照UDDI (Universal Description Discovery and Integration) 的協定更新服務目錄并在Internet 上發布。用戶在使用Web Services 前先向注冊服務器發出請求,獲得Web Services 提供者的地址和服務接口信息,之后使用SOAP 協議(Simple Object Access Protocol) 與Web Services 提供者建立連接,進行通信。Web Services 的技術主要建立在XML 的規范之上,這保證了這一體系結構的平臺無關性、語言無關性和人機交互性能。
2 增值業務門戶與業務管理平臺結構
增值業務門戶(Portal),包含運營商門戶、SP/CP門戶、用戶自服務門戶(Web方式)以及用戶移動門戶,與增值業務管理平臺(Data Service Management Platform,DSMP)同屬于移動增值業務平臺的重要功能組件。
增值業務門戶作為企業門戶,與一般信息門戶有本質區別,其服務對象為移動增值產業鏈所涉及的所有參與者,包括電信運營商、內容提供商、終端廠商、移動用戶等。因此,增值業務門戶應當能提供一系列的在線服務,使得運營商、SP/CP、廠商、移動用戶從Portal獲得必要的信息,并能通過Portal與移動增值業務管理平臺進行交互,從而實現在門戶上進行用戶信息維護、業務展現、業務瀏覽、業務訂購等事務處理。
增值業務平臺<sup>[4,5]</sup>局部結構圖如圖2所示。

2.1 業務門戶與管理平臺接口設計
這里僅描述用戶門戶/用戶自服務門戶與DSMP的接口實現的訂購類功能,即產品訂購、取消訂購、訂購關系查詢、訂購關系鑒權等。
結合Web Service的特點與具體的需求,增值業務管理平臺到業務門戶的接口采用Web Service的方式:接口由增值業務管理平臺提供,Portal調用,通過SOAP/HTTP協議進行通信,用WSDL(Edition 1.1)描述,業務訪問流程如圖3所示。

以訂購產品/產品包(SubscribeProduct)為例說明其設計實現。
發送方:業務門戶;
接收方:管理平臺;
入口參數設計:源Msisdn號、目的Msisdn號、用戶標識、訂購產品ID、產品包ID。各參數含義、類型如表1所示:

參數subscribeInput,如圖4所示。
出口參數設計:結果代碼。
參數如圖5所示。
2.2 業務門戶與管理平臺接口實現
(1) 生成服務的WSDL文件——XML形式的Web服務描述文件
描述此訂購服務的WSDL<sup>[6-9]</sup>包括:
XML序言和根元素:序言包括了XML聲明和DTD(或者是XML Schema),DTD(Document Type Definition,文檔類型定義)和XML Schema都是用來描述XML文檔結構的,也就是描述元素和屬性是如何聯系在一起。
<img src=\"https://img.resource.qikan.cn/qkimages/moet/moet200822/moet20082222-5-l.jpg?auth_key=1748411543-1820011674-0-35b806fd4b7bccfdac5e0d97f1314783\" hspace=\"15\" vspace=\"5\" align=\"\">
類型描述:采用XML語言定義上文中設計的輸入輸出參數。
<xs:element name=\"destMsisdn\" type=\"xsd1:msisdnType\"/>
<xs:choice>
<xs:element name=\"productId\" type=\"xs:string\"/>
<xs:element name=\"productPackId\" type=\"xs:string\"/>
</xs:choice>
(2) WSDL 消息描述:定義了2個匹配的消息,訂購請求和響應:
輸入消息SubscribeProductRequest定義:
<message name=\"SubscribeProductRequest\">
<part name=\"subscribeInput\" element=\"xsd1:subscribeInput\"/>
</message>
輸出消息SubscribeProductResponse定義:
<message name=\"SubscribeProductResponse\">
<part name=\"parameter\" element=\"xsd1:subscribeOutput\"/>
</message>
(3) 接口類型描述
portType 描述:一個portType等價于一個接口定義,可以包含1個或多個operation定義,例程中定義了單個operation,即SubscribeProduct,包含2個消息,SubscribeProductRequest和SubscribeProductResponse。
<portType name=\"dsmpPortType\">
<operation name=\"SubscribeProduct\">
<input message=\"y:SubscribeProductRequest\"/>
<output message=\"y:SubscribeProductResponse\"/>
</operation>
...
</portType>
(4) 綁定信息描述
邦定信息描述:定義訪問接口的協議,例程中創建一個dsmpPortType和SOAP間的綁定,稱為dsmpServiceBinding,soap:binding 元素表明這是一個以文檔為中心的使用HTTP的綁定。然后,WSDL operation 被映射到SOAP operation,其中定義了輸入和輸出soap:body 元素,以映射請求和響應。
<binding name=\"dsmpServiceBinding\" type=\"y:dsmpPortType\">
<soap:binding style=\"document\" transport=\"http://schemas.xmlsoap.org/soap/http\"/>
...
</binding>
(5) 服務描述
服務描述:WSDL service元素中定義了這個服務的一個實例。
<service name=\"dsmpServices\">
<port name=\"dsmpServicePort\" binding=\"y:dsmpServiceBinding\">
<soap:address location=\"http://xxx.dsmp.com/GateWayService\"/>
</port>
</service>
</definitions>
通過AxisServlet,由WSDL文件生成Web服務框架,完成其中的實現類,并部署到Server端(DSMP)。
利用Apache Axis工具,生成服務代理類,Client端(業務門戶)通過服務代理訪問服務。
3 結 語
Portal技術應用于業務系統集成時具備快捷、靈活的特點,易于構建風格一致、可定制化的用戶接口,完善用戶體檢。由于Web Service跨平臺、面向服務的特性,它成為門戶與業務模塊間接口方案的最佳選擇。
參考文獻
[1]趙劍東.異步web service 淺析和實現.計算機應用,2003,23(11):24-26.
[2]IBM Developer Works:Web Services 專區.http:∥www-900.ibm.com/developerWorks.
[3]蔡劍,景楠.Java Web應用開發:J2EE和Tomcat.北京:清華大學出版社,2005.
[4]陸鋼,廖建新.移動智能網業務管理系統的演進和發展[J].電信科學,2002:18(2):18-21.
[5]徐雷.3G數據業務管理平臺的研究.江蘇通信技術,2005(5):40-43.
[6]Steve Graham.Building Web Services with Java: Making Sense of XML,SOAP,WSDL,and UDDI.US:SAMS,2002.
[7]Apache Axis User′s Guide.http:∥ws.apache.org/axis/.
[8]AXIS,http://jakarta.apache.org/Axis/.
[9]李勁.動態電子商務的Web服務[M].北京:清華大學出版社,2002.
[10]楊成軍.移動數據業務平臺的演進.通信世界,2004(7):40.