Welcome 微信登录

首页 / 软件开发 / JAVA / JBuilder9的WEB服务介绍

JBuilder9的WEB服务介绍2010-12-15WEBSERVICE是一个通过网络特别是INTERNET调用,执行断序或连续任务的软件模型。

开发者能创建一个客户端应用调用一系列通过RPC或者消息服务来提供一些或大多数应用逻辑的WEB服务。开发者可以 定位一个发布的WEB服务,根据需要来使用它。

一个例子就是一个公司能提供WEB服务给它的顾客,让顾客在发定单之前检查产品的库存量。另一个例子就是顾客能用联邦快递提供的WEB服务来跟踪他们的快递。

WEB服务用SOAP(简单对象访问协议),用如HTTP的传输协议来交换SOAP消息。SOAP消息是事实上就是个XML文档,在WEB服务和调用中传递。

WEB服务能用任何语言编写 ,在任何平台上运行。WEB服务的客户端能用任意语言写,也能在任意平台上运行。例如,一个在WINDOWS平台上运行,用DEPHI编写的WEB服务能被在LINUX平台上JAVA编写的服务调用。

WEB服务架构

WEB服务架构允许服务的开发者暴露所有级别的业务功能,换句话说,一个WEB服务可以是非常简单的,如返回目前的温度,也可以是一个复杂的应用。架构也允许多个服务结合一个新的功能应用。

WEB服务有三个独立的角色,服务提供者,服务请求者,服务代理者。服务提供者创建服务,并提供给客户应用。服务请求者也可能是多个服务的客户。代理者,就是提供一个方式如服务注册,让服务提供者和服务请求者能够对服务进行交互。

三个角色通过服务的发布,查找,绑定进行交互。服务提供者通过用代理者的发布接口让客户能访问服务来通知代理者服务存在。发布信息描述了服务并说明服务定位在哪儿。服务请求者询问代理者服务的定位。根据从代理者获得的服务信息,请求者可以绑定或者调用这个服务。下面的图总结了三者如何交互。

WEB服务标准

WEB服务开发基于的标准包括一些技术。主要的是SOAP,WSDL(WEB服务描述语言),UDDI(通用描述,发现,集成)和WSIL(WEB服务检查语言)。

SOAP

Soap是一个独立传输消息协议。每一个SOAP消息就是一个XML文档。SOAP用单程消息,虽然它可能被合成请求回复的队列。SOAP规范定义了XML消息的格式,规范了它容易HTTP协议路由,但没有规范它的内容和它事实上是如何传递。

每一个SOAP文档有一个根元素。这个根元素,文档里的第一个元素,包含文档内所有的其它元素。在内有两个部分:消息头和消息体。消息头包含路由或者内容数据,可能为空。消息体包括实际消息,也可能为空。

下面是一个简单的SOAP消息例子,通过HTTP传输的目前BORLAND股价。

POST /StockQuote HTTP/1.1

Host: www.stockquoteserver.com

Content-Type: text/xml; charset="utf-8"

Content-Length: nnnn

SOAPAction: "urn:stock-quote-services"

xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"

SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">