Web Service技術討論資料_第1頁
Web Service技術討論資料_第2頁
Web Service技術討論資料_第3頁
Web Service技術討論資料_第4頁
Web Service技術討論資料_第5頁
已閱讀5頁,還剩39頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

WebService技術討論

WebService技術討論

■WebService簡介

■WebService協(xié)議簡介

■WebService實現(xiàn)

WebService簡介

■定義

■WebService的應用

■WebService技術優(yōu)點

■WebService體系結(jié)構(gòu)

WebService簡介

XML:extensibleMarkupLanguage

可擴展標記語言

是Internet上數(shù)據(jù)表示和數(shù)據(jù)交換的新標

準。

WebService簡介

XML特點:

■良好的可擴展性,語言簡單有效,可自行定義標記;

-內(nèi)容與形式分離,主要刻畫數(shù)據(jù)內(nèi)容,不考慮顯示效果;

-有嚴格的語法要求,便于分析統(tǒng)一和與數(shù)據(jù)庫信息轉(zhuǎn)換;

■便于傳輸,為純文本形式,可通過Http協(xié)議直接傳輸,可跨越防

火墻

WebService就是在XML基礎上發(fā)展起來的一種

革命性的分布是計算技術。

?WebService簡介

?定義:

WebService是在Internet上進行分布式計

算的基本構(gòu)造塊。開放的標準以及對用戶和應用程序

之間的通信和協(xié)作的關注產(chǎn)生了這樣一種環(huán)境,在這

種環(huán)境下,WebService成為應用程序集成的平臺。

應用程序是通過使用多個不同來源的WebService

構(gòu)造而成的,這些Service相互協(xié)同工作,而不管它們

位于何處或者如何實現(xiàn)。通過SOAP在Web上提供

的軟件服務,使用WSDL文件進行說明,并通過

UDDI進行注冊。

WebService簡介

■特征:

i.WebService通過標準的Web協(xié)議向Web用戶

提供有用的功能。多數(shù)情況下使用SOAP協(xié)議。

2.WebService可以非常詳細地說明其接口,這使用

戶能夠創(chuàng)建客戶端應用程序與它們進行通信。這種說

明通常包含在稱為Web服務說明語言(WSDL)文

檔的XML文檔中。

3.WebService已經(jīng)過注冊,以便潛在用戶能夠輕易

地找到這些服務,這是通過通用發(fā)現(xiàn)、說明和集成

(UDDI)來完成的。

WebService簡介

WebService的應用

圖1-1webservice網(wǎng)絡拓撲

-jlWebService簡介

■WebService的應用

Application

應用程序

ApplicationApplicationApplication

WebService1WebService2WebService...

圖1—2sop模式

Web服務的一個主要思想,就是未來的應用將由一組應用了網(wǎng)絡的

服務組合而成。(集中式計算模型)

WebService簡介

■WebService的應用

系統(tǒng)集成:

將相對分散的子系統(tǒng)組成一個統(tǒng)一的整體,實現(xiàn)子系統(tǒng)間的功

能控制和信息交互與共享。

-LWebService簡介

■WebService的優(yōu)點:

WebService與Web應用程序比較:

WebserviceWeb應用程序

編程模型面向服務的編程模型集中式編程模型

語言平臺獨立完全的跨語言,跨平臺不能完全的跨語言,跨平臺

WebService間介

■WebService的優(yōu)點:

WebService與com,corba等分布式應用程序比較:

Webservice技術Com技術Corba技術JavaRMI

編程模型面向服務的編程接口編程面向服務的編接口編程

模型程模型

發(fā)布方式Web方式應用程序方式應用程序方式應用程序

方式

協(xié)議通用W3C的標準協(xié)議DCEHOPJRMP

桂-SOAP,簡單,

易于實現(xiàn)

語言平臺完全的跨語言,Windows平臺完全的跨語言,跨平臺

獨立性跨平臺對等的語言環(huán)跨平臺對等的語

境言環(huán)境

WebService簡介

■WebService的優(yōu)點:

i.面向服務的分布式編程模型;

2.完全的語言,平臺獨立性;

3.協(xié)議的通用性;

WebService簡介

SOAPSOAP

NetworkProtocolRequestNetworkProtocol

Resoonse

圖1—3webservice概念性體系結(jié)構(gòu)

-LWebService簡介

■WebService體系結(jié)構(gòu)

從圖1-4可以看出,SOA結(jié)構(gòu)中共有三

種角色:

①Serviceprovider:發(fā)布自己的服務,

并且對使用自身服務的請求進行響

②Servicebroker:注冊已經(jīng)發(fā)布的

Serviceprovider,對其進行分類,

并提供搜索服務.存儲服務描述信

息的信息庫(Repository)o

(3)Servicerequester:利用

Servicebroker查找所需的服務,

然后使用該服務

-LWebService簡介

■WebService體系結(jié)構(gòu)

在這些角色之間使用了三種操作:

①publish操作:使Serviceprovider

可以向Servicebroker注冊自己

的功能及訪問接口

②find操作:使Servicerequestern]"

以通過Servicebroker查找特定

種類的服務

③bind操作:使Servicerequester能

夠真正使用Serviceprovider

WebService技術討論

■WebService簡介

■WebService協(xié)議簡介

■WebService實現(xiàn)

WebService協(xié)議簡介

■WebService協(xié)議

■SOAP

■WSDL

■UDDI

WebService協(xié)議簡介

■WebService的調(diào)用過程

圖1-4面向服務的體系結(jié)構(gòu)(SOA)

4WebService協(xié)議簡介

■WebService調(diào)用過程

1.客戶應用程序通過網(wǎng)絡向應用程序服務器發(fā)出SOAP消息請求。

2.基于該請求中的URI,該服務器識別被調(diào)用的WebServices。

3.WebServices讀取SOAP消息請求,并且識別它需要運行的操作。該操作對應于后

端組件的一個方法,該方法將在以后的步驟中被調(diào)用。對于所調(diào)用的操作,來

自SOAP消息的請求參數(shù)在WebServices層進行從XML到Java的轉(zhuǎn)換。一個反

序列化類被用來達到該目的。該反序列化類可以是由應用程序服務器為內(nèi)置數(shù)

據(jù)類型而提供的,也可以是用戶為非內(nèi)置數(shù)據(jù)類型所創(chuàng)建的。

4.調(diào)用具有所需Java參數(shù)的合適的后端組件方法。

5.方法調(diào)用完畢之后,后端組件返回響應,由WebServices使用合適的序列化類將

該響應從Java轉(zhuǎn)換為XML,然后將它打包為SOAP消息響應。

6.WebServices將SOAP消息響應返回到調(diào)用WebServices的客戶應用程序。

上述體系結(jié)構(gòu)描述了一個非?;镜膱鼍?,但是由于各種各樣原因,真正的Web

Services能通過添加基于功能的中間組件,給系統(tǒng)內(nèi)帶來更多的復雜性。它們

可能需要訪問SOAP消息,進行處理、加密或者修改。SOAP消息處理程序正

是為達到此目的而設計,它們提供了截取SOAP消息的機制。

WebService協(xié)議簡介

■WebService協(xié)議

WSFLServiceFlow

ServiceDiscovery

Q

Mu

aa

snl

ServicePublicationca<

cgo

ruef

imS

y-ee

ServiceDescriptionnr

-iv

ec

XML-basedMessaging

Network

圖3-2webservice協(xié)議

?WebService協(xié)議簡介

■SOAP

定義:

Soap(簡單對象訪問協(xié)議):是WebService的通信協(xié)議。

SOAP規(guī)范介紹如何將程序數(shù)據(jù)表示為XML,以及如何使用。

WebService協(xié)議簡介

■SOAP定義

進行遠程過程調(diào)用ApplicationApplication

SOAPWebService

(RPC)

請求/響應消息

SOAPSOAP

-請求消息-調(diào)用遠端Request

對象的某個方法NetworkProtocolNetworkProtocol

■響應消息-返回該方

法運行后的輸出結(jié)果Response

圖2—1webservice消息發(fā)送過程

WebService協(xié)議簡介

■SOAP定義

SOAP的承載協(xié)議:

SOAP規(guī)范的最后一個可選部分定義了包含SOAP消息的HTTP

消息的樣式。因為兒乎所有當前的OS(以及許多以前的

OS)都支持HTTPoHTTP綁定雖然是可選的,但幾乎所有

SOAP實現(xiàn)方案都支持HTTP綁定,因為它是SOAP的唯

一標準協(xié)議。

WebService協(xié)議簡介

■SOAP消息結(jié)構(gòu)

?使用“envelope”包裝消息

?消息可以采用自身特定的XML詞匯

?使用namespace來區(qū)分彼此

WebService協(xié)議簡介

■SOAP消息結(jié)構(gòu)

<SOAP-ENV:Envelope

xmlns:SOAP-ENV="http://fsoaporg}/unvelopn/"

SOAP-ENV:encodingStyle=Mhttp://{soaporg}/encoding/"〉

<SOAP-ENV:Body>

<m:Messagecontrolxmlns:m="Some-UR工”/>

<m:Transactionxmlns:m=nSome-URI6t/>

〈/SOAP-ENV:Body〉

</SOAP-ENV:Envelope>

WebService協(xié)議簡介

■SOAP優(yōu)勢/缺點:

優(yōu)勢:

?SOAP最引人注目的特征是它可以在許多不同的軟件和硬件平臺上實現(xiàn)。這

意味著SOAP可用于鏈接企業(yè)內(nèi)部和外部的不同系統(tǒng)。

?SOAP更小巧,而且更易于實現(xiàn)。

缺點:

?SOAP并不具備DCE或CORBA的全部功能,雖然功能減少了,但由于

其復雜程度大大降低了,因此SOAP更易于應用。

]WebService協(xié)議簡介

>SOAP安全性:

?HTTPS(ssl安全套接字協(xié)議層)

?WS—Security規(guī)范

WebService協(xié)議簡介

作為初始發(fā)送者的作為最終接收者的

底層協(xié)議層一一底層協(xié)一議消息路徑._____

WebService協(xié)議簡介

■WSDL:

定義:

WSDL(WebServicesDescriptionLanguage)用于說明Web服務。

為服務提供者提供以XML格式描述WebServices請求的標準格式,

將網(wǎng)絡服務描述為能夠進行消息交換的通信端點的集合,以表

達一個WebServices能做什么,它的位置在哪里,如何調(diào)用它。

WSDL還定義了一組SOAP消息以及如何交換這些消息,以及使

用什么通信協(xié)議與服務進行通信。

WSDL對于SOAP的作用就象IDL對于CORBA或COM的作用。

WebService協(xié)議簡介

■WSDL:

優(yōu)點/缺點:

-編程語言無關,因此適用于說明可從不同平臺、以不同編

程語言訪問的WebService接口。

<?xmlversion^'1.0Hencoding=HUTF-8n?>

<wsdl:definitionstargetNamespace=,,Hxmlns:apachesoap=,,/xml-soap"

xmlns:impl=nnxmlns:intf="http://service."

xmlns:soapenc=n/soap/encoding/uxmlns:wsdl=',/wsdl/"

xmlns:wsdlsoap="http:〃/wsdl/soap/"xmlns:xsd-'/200l/XMLSchemaH>

SDLcreatedbyApacheAxisversion:1.2.1BuiItonAug08,2005(11:49:10PDT)—>

kmessa:

rtw卷乩Service協(xié)議簡介

[:mcssaee>

ssagename=,,helloResponsen>

<wsdl:partngie=,,helld^t^JTj^=nxsd:string,7>

</wsdl:message>e

<wsdl:portTc〒義?I嗯攵^ce”、、二

<wsdl:operatK^aiJ^hell(l^)aram^erOr8er=nnattrefi>口WSDL文件

<wsdl:inputmessage=niiTipl:helloRequest"name=,'helloRequest,7>

<wsdl:outputmessage=',impl:helloResponsenname=nhelloResponse,7>

</wsdl:operation>

</wsdl:portType>

<wsdl:bindingname="HelloServiceSoapBinding“type=nimpl:HelloServiceu>

<wsdlsoap:bindingstyle=',rpcutransport=,,/soap/http*7>

<wsdl:operationname=,,hello',>

<wsdlsoap:operationsoapAction=,u7>

<wsdl:inputname=nhelloRequestn>

<wsdlsoap:bodyencodingStyle="http:〃/soap/encoding/"namespace=,'"use=,'encoded,7>

</wsdl:input>

<wsdl:outputname=,'helloResponseM>

<wsdlsoap:bodyencodingStyle=n/soap/encoding/nnamespace="http:〃”use=',encoded,7>

</wsdl:output>

</wsdl:operation>

</wsdl:binding>

<wsdl:servicename="HelloServiceServiceu>

WebService協(xié)議簡介

UDDI定義:(UniversalDiscovery,Description,Integration)

通用發(fā)現(xiàn)、說明和集成(UDDI)是Web服務的黃頁。與傳統(tǒng)黃頁一

樣,您可以搜索提供所需服務的公司,閱讀以了解所提供的服務,

然后與服務提供商聯(lián)系以獲得更多信息。

WebService協(xié)議簡介

UDDI:

UDDI目錄條目是介紹所提供的業(yè)務和服務的XML文件。白頁

UDDI目錄條目包括三個部分。服務提供商的信息

?“白頁”介紹提供服務的公司:名稱、地址、聯(lián)

系方式等等;

?“黃頁”包本舌基于標準分類法(例如North

黃頁

AmericanIndustryClassificationSystem和商業(yè)利服務分類(NAICS,UN/SPEC)

StandardIndustrialClassification)的行業(yè)類別;

-“綠頁”詳細介紹了訪問服務的接口,以便用戶

能夠編寫應用程序以使用Web服務。

綠頁

服務的技術規(guī)范和調(diào)用方式

WebService協(xié)議簡介

UDDI定義:(UniversalDiscovery,Description,Integration)

UDDI目錄還包含若干種方法,可用于搜索構(gòu)建您的應用程序所需的服務。例

如,您可以搜索特定地理位置的服務提供商或者搜索特定的業(yè)務類型。

之后,UDDI目錄將提供信息、聯(lián)系方式、鏈接和技術數(shù)據(jù),以便您確定

能滿足需要的服務。

UDDI允許您查找提供所需的Web服務的公司。如果您已經(jīng)知道要與誰進行業(yè)

務合作,但尚不了解它還能提供哪些服務,這時該如何處理呢?WS-

InsDection規(guī)范(英文)允許您瀏覽特定服務器上提供的XMLWeb

Service的集合,從中查找所需的服務。

WebService協(xié)議簡介

UDDIXE乂:(UniversalDiscovery,Description,Integration)

當某應用系統(tǒng)需要集成時,它首先調(diào)用集成平臺的接口,將其能夠提供的

服務用WSDL描述后,用SOAP消息發(fā)布到UDDI注冊中心。

-如果注冊中心是私有的,則集成的是企業(yè)內(nèi)部的應用系統(tǒng)。

■如果注冊到公有注冊中心,則可以在通過Internet集成不同企業(yè)之

間的不同系統(tǒng)。

最后將服務描述文件通過UDDIAPI發(fā)布到UDDI注冊服務器中。

用SOAP消息發(fā)布到UDDI注冊中心。

WebService協(xié)議簡介

■UDDI:

UDDI規(guī)范描述了WebServices的概念,同時也定義了一種編程接口。

通過UDDI提供的標準接口,企業(yè)可以發(fā)布白己的WebServices

供其它企業(yè)查詢、調(diào)用;也可以查詢特定服務的描述信息,并

動態(tài)綁定到該服務上。

?WebService協(xié)議簡介

UDDI:

服務的定義是通過一個稱為類

型模型(tModel)的UDDI文

檔來完成的。多數(shù)情況下,

tModel包含一個WSDL文件,

用于說明訪問XMLWeb

Service的SOAP接口,但是

tModel非常靈活,可以說明幾

乎所有類型的服務。

面向公眾力

WebService協(xié)議簡介

UDDI消息結(jié)構(gòu):

BusinessEntity:Informationaboutthe

tModel:Descriptionofspecifications

partwhopublishesinformationabouta

ofservicesorvaluesets.Basisfor

service

technicalfingerprint

BusinessEntitycontain

Businessservices

bindingTemplatescontainreferencesto

tModel.Therereferencesdesignatethe

BusinessService:Descriptiveinterfacespecifica

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論