《電子技術應用》
您所在的位置:首頁 > 其他 > 业界动态 > JAVA、SOAP构建服务集成平台

JAVA、SOAP构建服务集成平台

2008-12-19
作者:方 洋

1、引言?

隨著計算機技術的飛速發展,軟件的開發在經歷了面向對象、面向組件和面向領域后,如今進一步要求面向服務、面向工作流。面向服務的軟件開發將不再局限于單個企業部門,而需要考慮到整個企業,整個行業以及與行業運作相關的政府職能部門。這樣,集成技術就顯得越來越重要,不僅需要有企業內部的A2A集成,還需要有企業間的B2B以及政府職能部門與整個企業的G2B集成,甚至還包括政府各部門間的G2G集成。?

在傳統的集成技術中,開發人員一直通過集成本地系統服務來構建應用系統" title="應用系統">應用系統。分布式的應用系統建立需要使用分布式的組件對象模型。如目前應用比較廣泛DCOM和CORBA。這兩種系統使用了不同的數據表達方式,互不兼容。并且,無法擴展到互聯網上,它們要求通信兩端有同類基本結構,緊密耦合,一旦一方的執行機制發生變化,那么另一方就會崩潰,它們穿透互聯網上各種各樣的防火墻的能力不能令人滿意。?

2、JAVA中的SOAP分布式結構?

面向服務和工作流的集成技術通常需要的是松耦合、跨平臺、語言無關、與特定服務無關的。而SOAP恰恰能做到這一點。SOAP簡單、輕量級的協議,它把成熟的基于HTTP的Web技術和XML的靈活性、可擴展性結合在一起。方便的實現多種異構平臺之間的相互訪問。JAVA是一種跨平臺語言,它為SOAP提供了一個開放源代碼的簡單易操作的Java實現。JAVA中的SOAP分布式結構" title="分布式結構">分布式結構如圖1所示:?

這種結構有利于軟件組件的重復使用,例如,一個商業邏輯存在于一個分布式系統中,它可以被一個用交互分布計算協議的遠程系統所使用。允許外部機構訪問包含在無法通過防火墻障礙的分布式系統內的也是有效方法。類似地,分布式結構可以用于組成企業應用程序集成(EAI)方案和企業間的B2B集成方案。?

3、SOAP機制下服務集成平臺結構?

服務集成平臺是業務服務運作的支撐平臺,它使得業務服務最終面向公眾,是一個為公眾提供與之密切相關的各種業務服務,如查詢,消費和各種申請服務的一站式服務平臺" title="服務平臺">服務平臺。?

本文構建了基于SOAP的服務集成平臺結構,以實現各種業務服務。其結構如圖2所示:?

SOAP機制[1]在服務集成平臺中充當了底層通信的角色,其作用是作為消息的載體,實現分布式對象訪問和應用系統之間的調用,從而將企業內部,企業間,政府內部,企業與政府間各個分散的、獨立的服務能按一定的業務規范連接起來,組成一個有機的整體,完成更多的功能,以實現企業自動化、商務流程自動化、B2B電子商務和電子政務。?

服務集成平臺結構有兩部分組成;服務集成平臺和后臺服務系統。?

后臺服務系統由服務運營商提供各種功能組件,以完成各種具體邏輯操作,該組件以服務形式對外發布,在注冊庫中注冊其服務描述文檔,以供平臺系統動態調用。它對應圖1中Web服務器和實現具體功能的Java對象。?

服務集成平臺主要完成服務的集成,它主要實現圖1中SOAP客戶機的作用,該平臺主要包括兩大子系統:業務服務支撐系統" title="支撐系統">支撐系統和業務服務集成系統。?

應用集成層(Application Integration Layer,簡稱AIL)是服務集成系統中的核心模塊,它動態的加載在注冊庫(Register&Repository,簡稱RR)中注冊的各個服務的說明及描述文檔以及各服務之間的業務關系、常用規范(即工作流文檔),來完成流程的建立,信息的協調和數據的傳輸,動態的協同各個獨立的服務等服務集成的主要工作。?

業務服務支撐系統是提供一個業務服務的集成和運行環境,它主要包括由客戶端" title="客戶端">客戶端環境(Client Environment)和服務器環境(Server Environment)共同建立的業務服務運行環境。業務服務運行環境的主要功能如下:?

(1)?????? 業務服務管理;包括服務的注冊、注銷,服務的擴展接口以及服務文件的傳送。?

(2)?????? 界面管理;包括平臺系統界面和業務服務界面的管理。?

(3)?????? 數據資源管理;主要是本地數據和業務服務數據的存儲、傳輸管理。?

(4)?????? 通信管理;負責完成終端與服務器的數據通信。?

(5)?????? 安全管理;負責通信過程中的數據安全,以及平臺各終端的身份認證。?

(6)?????? 在較復雜的業務服務平臺中,還可能有對終端硬件的管理,如卡類服務所需的插卡機。?

系統內部各模塊間,以及與后臺服務間均采用XML做為數據交換,平臺系統與后臺服務間以SOAP做為底層通信協議,XML和SOAP的結合使得整個服務平臺具有松耦合、跨平臺、語言無關、與特定服務無關的特點。業務服務極易升級及擴展。?

4、服務集成平臺實例?

電子化城市服務亭系統就是建立在圖2結構上的一個服務集成平臺。它是上海市社會保障中心重點科研項目,它通過分布在社區和各種公眾場所的終端向公眾提供一系列與之生活相關的各類服務,例如,天氣信息、卡類信息等查詢服務;繳納水費、電費的各種繳費服務;訂票、旅游、購車等消費服務;以及申請失業保障、就業培訓等申請服務。?

下面將以一個汽車消費服務為例來講述其在此平臺上的實現。這里將汽車消費服務簡化為只包括汽車消費申請和車牌申請兩個子服務的一個簡單流程服務。這里將不涉及到電子交易。汽車消費服務的實現流程圖如圖3所示。?

?

???????????? ?

1.發起請求;用戶通過客戶端環境的平臺界面和汽車銷售業務服務界面向服務器環境發起請求,請求消息包括用戶的基本信息及所希望購買的汽車信息??蛻舳谁h境將請求信息和業務服務支撐系統運行時的必要信息(如業務服務綁定名)一起封裝成XML文檔,傳給服務器環境,其XML文檔如下:?

…?

?

??????? ?

??????? …?

?

?

??????? ?

??????? …?

?

?

…?

2.查詢業務服務描述信息;服務器環境根據業務服務綁定名新建一個業務服務實例,代碼如:BusinessService carsalling = new BusinessService(“car”);?

接著向注冊庫查詢汽車銷售業務服務描述信息。業務服務描述信息包括業務服務的應用程序包,啟動主類程序以及端口消息類型等調用信息。其代碼如:carsalling.find(“car”);?

3.啟動業務服務;服務器環境通過注冊庫的汽車銷售業務服務的描述信息自動加載業務服務程序包,啟動汽車銷售業務服務,并將用戶請求信息傳遞給該業務服務。其代碼如:?

carsalling.load(“car”,userXMLinformation);?

4.查詢子服務描述信息;汽車銷售業務服務AIL向注冊庫查詢汽車消費申請和車牌申請兩個子服務的描述信息。AIL將根據汽車銷售業務邏輯及注冊庫中各服務之間的業務關系、常用規范及服務流程,來完成具體操作。汽車銷售業務服務只是簡單的順序執行兩個子服務。?

5.完成汽車申請服務; AIL根據汽車申請服務的描述信息來生成SOAP請求調用該服務,從而完成用戶請求信息在汽車銷售商處的具體操作。其主要Java代碼如下:?

…?

Call call = new Call();?

Vector vctParamers = new Vector();?

Response response;?

Try{?

??????? call.setTargetObjectURI(“urn:carApply”);? //設定服務名?

??????? call.setMethodName(“carApply”);??????? //設定方法名?

??????? call.setEncodingStyleURI(Constants.NS-URI-SOAP-ENC);?

??????? vctParamers.addElement(new Parameter?

(“inputXML”,Element.class,elementInput,Constant.NS-URI-LITERAL-XML));?

??????? call.setParamers(vctParameters);???????? //設定需提交的參數?

??????? response = call.invoke(url,””)????????????? //調用汽車申請服務?

}catch{}?

…?

6.完成車牌申請服務;AIL根據車牌申請服務的描述信息來生成SOAP請求調用該服務,從而完成用戶請求信息在交通管理部門的具體操作,其Java代碼與5中基本相似。?

7.服務返回信息整合;AIL將服務調用的返回信息進行整合,形成返回消息。并將此消息傳遞給平臺服務器環境。該返回消息包括汽車申請的成功與否及車牌申請的成功與否等具體信息。?

8.返回用戶信息;服務器環境將AIL的返回信息進行XML封裝,同樣加上支撐系統的運行信息一起返回給客戶端環境,客戶端環境將用戶所需的信息解析出后通過服務界面最終返回給用戶。?

5、結束語?

服務平臺是一種世界潮流,它在城域網內實現公眾所需的各種業務服務,它將是作為城市信息化的重要組成部分,對城市的信息化建設起推動作用,并且有利于電子商務的推廣。本文提出基于SOAP的服務集成平臺結構。并在此結構上給出了一個汽車銷售服務的Java實現。Java和SOAP都具有與平臺無關的優良特性,這使得此服務集成平臺具有了良好的通用性,各個功能模塊間的松散耦合又使得此平臺具有了良好的擴展性。

參考文獻?

[1] 施明輝,用基于XML的SOAP機制構建應用系統,計算機應用,2002.4?

[2] Bilal Siddiqui ,Developing Web services, Part 3: SOAP interoperability,http://www-106.ibm.com/developerworks/webservices/library/ws-intwsdl3.html,2002.9?

本站內容除特別聲明的原創文章之外,轉載內容只為傳遞更多信息,并不代表本網站贊同其觀點。轉載的所有的文章、圖片、音/視頻文件等資料的版權歸版權所有權人所有。本站采用的非本站原創文章及圖片等內容無法一一聯系確認版權者。如涉及作品內容、版權和其它問題,請及時通過電子郵件或電話通知我們,以便迅速采取適當措施,避免給雙方造成不必要的經濟損失。聯系電話:010-82306118;郵箱:aet@chinaaet.com。
主站蜘蛛池模板: 99视频国产精品免费观看| 国产成人精品免高潮在线观看| 国产精品亚洲视频在线观看| 亚洲欧洲一区二区| 国产精品免费久久久| 欧美日本韩国国产| 日本阿v视频在线观看 | 久久久久久成人精品| 久久天堂国产精品| 国产精品福利久久久| 亚洲91精品在线亚洲91精品在线| 久久精品午夜一区二区福利| 国产精品久久久久久久久婷婷| 欧美精品在线播放| 国产黄页在线观看| 久久久久久久少妇| 欧美中文字幕精品| 久久国产成人精品国产成人亚洲| 国产日本欧美视频| 日韩视频在线免费播放| 视频一区不卡| y97精品国产97久久久久久| 91国自产精品中文字幕亚洲| 亚洲中文字幕无码一区二区三区| 久久久久久久久综合| 国产欧美中文字幕| 一区二区三区四区欧美日韩| 午夜久久久久久久久久久| 日韩av一区二区三区在线观看| 久久中文字幕视频| 欧美日韩精品免费观看视一区二区| 91精品免费久久久久久久久| 国产在线观看精品一区二区三区| 日韩有码在线观看| 国产美女精品免费电影| 中文精品无码中文字幕无码专区| 欧美久久久久久V| 国产精品久久久久久av| 日韩精品 欧美| 91精品国产高清久久久久久久久| 欧美亚洲日本黄色|