Web Service技术讨论资料_第1页
Web Service技术讨论资料_第2页
Web Service技术讨论资料_第3页
Web Service技术讨论资料_第4页
Web Service技术讨论资料_第5页
已阅读5页,还剩39页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

WebService技术讨论

WebService技术讨论

■WebService简介

■WebService协议简介

■WebService实现

WebService简介

■定义

■WebService的应用

■WebService技术优点

■WebService体系结构

WebService简介

XML:extensibleMarkupLanguage

可扩展标记语言

是Internet上数据表示和数据交换的新标

准。

WebService简介

XML特点:

■良好的可扩展性,语言简单有效,可自行定义标记;

-内容与形式分离,主要刻画数据内容,不考虑显示效果;

-有严格的语法要求,便于分析统一和与数据库信息转换;

■便于传输,为纯文本形式,可通过Http协议直接传输,可跨越防

火墙

WebService就是在XML基础上发展起来的一种

革命性的分布是计算技术。

।WebService简介

・定义:

WebService是在Internet上进行分布式计

算的基本构造块。开放的标准以及对用户和应用程序

之间的通信和协作的关注产生了这样一种环境,在这

种环境下,WebService成为应用程序集成的平台。

应用程序是通过使用多个不同来源的WebService

构造而成的,这些Service相互协同工作,而不管它们

位于何处或者如何实现。通过SOAP在Web上提供

的软件服务,使用WSDL文件进行说明,并通过

UDDI进行注册。

WebService简介

■特征:

i.WebService通过标准的Web协议向Web用户

提供有用的功能。多数情况下使用SOAP协议。

2.WebService可以非常详细地说明其接口,这使用

户能够创建客户端应用程序与它们进行通信。这种说

明通常包含在称为Web服务说明语言(WSDL)文

档的XML文档中。

3.WebService已经过注册,以便潜在用户能够轻易

地找到这些服务,这是通过通用发现、说明和集成

(UDDI)来完成的。

WebService简介

WebService的应用

图1-1webservice网络拓扑

-jlWebService简介

■WebService的应用

Application

应用程序

ApplicationApplicationApplication

WebService1WebService2WebService...

图1—2sop模式

Web服务的一个主要思想,就是未来的应用将由一组应用了网络的

服务组合而成。(集中式计算模型)

WebService简介

■WebService的应用

系统集成:

将相对分散的子系统组成一个统一的整体,实现子系统间的功

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

-LWebService简介

■WebService的优点:

WebService与Web应用程序比较:

WebserviceWeb应用程序

编程模型面向服务的编程模型集中式编程模型

语言平台独立完全的跨语言,跨平台不能完全的跨语言,跨平台

WebService间介

■WebService的优点:

WebService与com,corba等分布式应用程序比较:

Webservice技术Com技术Corba技术JavaRMI

编程模型面向服务的编程接口编程面向服务的编接口编程

模型程模型

发布方式Web方式应用程序方式应用程序方式应用程序

方式

协议通用W3C的标准协议DCEHOPJRMP

桂-SOAP,简单,

易于实现

语言平台完全的跨语言,Windows平台完全的跨语言,跨平台

独立性跨平台对等的语言环跨平台对等的语

境言环境

WebService简介

■WebService的优点:

i.面向服务的分布式编程模型;

2.完全的语言,平台独立性;

3.协议的通用性;

WebService简介

SOAPSOAP

NetworkProtocolRequestNetworkProtocol

Resoonse

图1—3webservice概念性体系结构

-LWebService简介

■WebService体系结构

从图1-4可以看出,SOA结构中共有三

种角色:

①Serviceprovider:发布自己的服务,

并且对使用自身服务的请求进行响

②Servicebroker:注册已经发布的

Serviceprovider,对其进行分类,

并提供搜索服务.存储服务描述信

息的信息库(Repository)o

(3)Servicerequester:利用

Servicebroker查找所需的服务,

然后使用该服务

-LWebService简介

■WebService体系结构

在这些角色之间使用了三种操作:

①publish操作:使Serviceprovider

可以向Servicebroker注册自己

的功能及访问接口

②find操作:使Servicerequestern]"

以通过Servicebroker查找特定

种类的服务

③bind操作:使Servicerequester能

够真正使用Serviceprovider

WebService技术讨论

■WebService简介

■WebService协议简介

■WebService实现

WebService协议简介

■WebService协议

■SOAP

■WSDL

■UDDI

WebService协议简介

■WebService的调用过程

图1-4面向服务的体系结构(SOA)

4WebService协议简介

■WebService调用过程

1.客户应用程序通过网络向应用程序服务器发出SOAP消息请求。

2.基于该请求中的URI,该服务器识别被调用的WebServices。

3.WebServices读取SOAP消息请求,并且识别它需要运行的操作。该操作对应于后

端组件的一个方法,该方法将在以后的步骤中被调用。对于所调用的操作,来

自SOAP消息的请求参数在WebServices层进行从XML到Java的转换。一个反

序列化类被用来达到该目的。该反序列化类可以是由应用程序服务器为内置数

据类型而提供的,也可以是用户为非内置数据类型所创建的。

4.调用具有所需Java参数的合适的后端组件方法。

5.方法调用完毕之后,后端组件返回响应,由WebServices使用合适的序列化类将

该响应从Java转换为XML,然后将它打包为SOAP消息响应。

6.WebServices将SOAP消息响应返回到调用WebServices的客户应用程序。

上述体系结构描述了一个非常基本的场景,但是由于各种各样原因,真正的Web

Services能通过添加基于功能的中间组件,给系统内带来更多的复杂性。它们

可能需要访问SOAP消息,进行处理、加密或者修改。SOAP消息处理程序正

是为达到此目的而设计,它们提供了截取SOAP消息的机制。

WebService协议简介

■WebService协议

WSFLServiceFlow

ServiceDiscovery

Q

Mu

aa

snl

ServicePublicationca<

cgo

ruef

imS

y-ee

ServiceDescriptionnr

-iv

ec

XML-basedMessaging

Network

图3-2webservice协议

।WebService协议简介

■SOAP

定义:

Soap(简单对象访问协议):是WebService的通信协议。

SOAP规范介绍如何将程序数据表示为XML,以及如何使用。

WebService协议简介

■SOAP定义

进行远程过程调用ApplicationApplication

SOAPWebService

(RPC)

请求/响应消息

SOAPSOAP

-请求消息-调用远端Request

对象的某个方法NetworkProtocolNetworkProtocol

■响应消息-返回该方

法运行后的输出结果Response

图2—1webservice消息发送过程

WebService协议简介

■SOAP定义

SOAP的承载协议:

SOAP规范的最后一个可选部分定义了包含SOAP消息的HTTP

消息的样式。因为儿乎所有当前的OS(以及许多以前的

OS)都支持HTTPoHTTP绑定虽然是可选的,但几乎所有

SOAP实现方案都支持HTTP绑定,因为它是SOAP的唯

一标准协议。

WebService协议简介

■SOAP消息结构

•使用“envelope”包装消息

•消息可以采用自身特定的XML词汇

•使用namespace来区分彼此

WebService协议简介

■SOAP消息结构

<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协议简介

■SOAP优势/缺点:

优势:

•SOAP最引人注目的特征是它可以在许多不同的软件和硬件平台上实现。这

意味着SOAP可用于链接企业内部和外部的不同系统。

•SOAP更小巧,而且更易于实现。

缺点:

•SOAP并不具备DCE或CORBA的全部功能,虽然功能减少了,但由于

其复杂程度大大降低了,因此SOAP更易于应用。

]WebService协议简介

>SOAP安全性:

・HTTPS(ssl安全套接字协议层)

•WS—Security规范

WebService协议简介

作为初始发送者的作为最终接收者的

底层协议层一一底层协一议消息路径._____

WebService协议简介

■WSDL:

定义:

WSDL(WebServicesDescriptionLanguage)用于说明Web服务。

为服务提供者提供以XML格式描述WebServices请求的标准格式,

将网络服务描述为能够进行消息交换的通信端点的集合,以表

达一个WebServices能做什么,它的位置在哪里,如何调用它。

WSDL还定义了一组SOAP消息以及如何交换这些消息,以及使

用什么通信协议与服务进行通信。

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

WebService协议简介

■WSDL:

优点/缺点:

-编程语言无关,因此适用于说明可从不同平台、以不同编

程语言访问的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协议简介

[: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协议简介

UDDI定义:(UniversalDiscovery,Description,Integration)

通用发现、说明和集成(UDDI)是Web服务的黄页。与传统黄页一

样,您可以搜索提供所需服务的公司,阅读以了解所提供的服务,

然后与服务提供商联系以获得更多信息。

WebService协议简介

UDDI:

UDDI目录条目是介绍所提供的业务和服务的XML文件。白页

UDDI目录条目包括三个部分。服务提供商的信息

・“白页”介绍提供服务的公司:名称、地址、联

系方式等等;

・“黄页”包本舌基于标准分类法(例如North

黄页

AmericanIndustryClassificationSystem和商业利服务分类(NAICS,UN/SPEC)

StandardIndustrialClassification)的行业类别;

-“绿页”详细介绍了访问服务的接口,以便用户

能够编写应用程序以使用Web服务。

绿页

服务的技术规范和调用方式

WebService协议简介

UDDI定义:(UniversalDiscovery,Description,Integration)

UDDI目录还包含若干种方法,可用于搜索构建您的应用程序所需的服务。例

如,您可以搜索特定地理位置的服务提供商或者搜索特定的业务类型。

之后,UDDI目录将提供信息、联系方式、链接和技术数据,以便您确定

能满足需要的服务。

UDDI允许您查找提供所需的Web服务的公司。如果您已经知道要与谁进行业

务合作,但尚不了解它还能提供哪些服务,这时该如何处理呢?WS-

InsDection规范(英文)允许您浏览特定服务器上提供的XMLWeb

Service的集合,从中查找所需的服务。

WebService协议简介

UDDIXE乂:(UniversalDiscovery,Description,Integration)

当某应用系统需要集成时,它首先调用集成平台的接口,将其能够提供的

服务用WSDL描述后,用SOAP消息发布到UDDI注册中心。

-如果注册中心是私有的,则集成的是企业内部的应用系统。

■如果注册到公有注册中心,则可以在通过Internet集成不同企业之

间的不同系统。

最后将服务描述文件通过UDDIAPI发布到UDDI注册服务器中。

用SOAP消息发布到UDDI注册中心。

WebService协议简介

■UDDI:

UDDI规范描述了WebServices的概念,同时也定义了一种编程接口。

通过UDDI提供的标准接口,企业可以发布白己的WebServices

供其它企业查询、调用;也可以查询特定服务的描述信息,并

动态绑定到该服务上。

»WebService协议简介

UDDI:

服务的定义是通过一个称为类

型模型(tModel)的UDDI文

档来完成的。多数情况下,

tModel包含一个WSDL文件,

用于说明访问XMLWeb

Service的SOAP接口,但是

tModel非常灵活,可以说明几

乎所有类型的服务。

面向公众力

WebService协议简介

UDDI消息结构:

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. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论