Java资源网

| JAVA基础 | 环境配置 | JDBC | 线程技术 | Socket编程 | JavaMail | JAVA与XML | 设计模式 | 技术新闻 | Java认证 | 程序人生 软件下载
| JSP&Servlet | Spring | Struts | Hibernate | JBuilder | Eclipse | WebService | EJB技术 | J2ME开发 | 应用服务器 | JXTA | Ajax
Articles search文章搜索
   关键字:
   类 别:
       
New download 最新下载
· [组件]HTML Parser 1.5
· [教程]WebSphere Studio应用教程
· [组件]JDom 1.0
· [工具]Junit3.8.1
· [教程]EJB编程及J2EE系统架构和设计
· [教程]EJB教程
· [教程]J2EE Tutorial中文版
· [教程]Java编程思想2(英文)
· [教程]java编程思想(完整版)
· [教程]Java网络编程
New articles 最新文章
· 设计移动 Web 服务
· 解析XML的时候完全忽略DTD
· 理解XML Schema XML Schema 初步
· 标签库的深入研究
· 提升JSP应用程序的七大绝招
· 如何使用JDOM对XML文件进行操作
· 处理XML字符串中特殊字符
· 利用Digester把XML转换成为Java对象
· 使用WebService 和RMI远程协作
· 使用Axis开发Web Service程序
Articles top 热门文章
· Eclipse基础--plugin插件安装(6644)
· eclipse+tomcat+lomboz的安装配置说明(4774)
· Java程序员就业前景(4584)
· Windows下JAVA环境变量的设置祥解(3788)
· Tomcat下JSP、Servlet和JavaBean环境的配置(3716)
· 使用links方式安装Eclipse插件(3698)
· 一个老程序员的心理话(3533)
· linux下jdk的安装与配置(3459)
· 初学者入门:Structs中基本配置入门(3334)
· Eclipse 运行命令行参数大全(3084)
您的位置:首页>>JBuilder>>JBuilder9的WEB服务介绍
JBuilder9的WEB服务介绍
2005-06-29   来源:Java资源网  作者:Java资源网

  WEBSERVICE是一个通过网络特别是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/">

BORL

  关于SOAP更多信息请看下面URL的SOAP文档:http://www.w3.org/2002/ws/,http://xml.apache.org/soap/

  WEB服务描述语言(WSDL)

  如果一个WEB服务不能为发现和调用,那么这个WEB服务没有任何意义。开发者必须知道WEB服务的足够的信息才能写出一个客户程序调用它。WSDL是基于XML的,它被用来定义WEB服务说明如何访问它。特别是它说明了WEB服务约定的消息和数据。通过检查一个WEB服务的WSDL,什么方法能调用,及如何用合适的参数调用。




  更深入了解请看WSDL1。1规范:http://www.w3.org/TR/wsdl

  通用描述,发现和集成(UDDI)

  UDDI是个发展中的标准,用来描述,发布和发现业务开发者的WEB服务。它是一个WEB服务的分布式注册信息的规范。一旦一个WEB服务开发,一个WSDL描述它的文档将建,就有必要让想用它描述的WEB服务的用户获得这个WSDL信息。当一个WEB服务通过UDDI注册发布,潜在的用户有一个方式来解析和学习关于这个WEB服务的存在。

  UDDI注册的内容接近电话路径。在注册白页项里是诸如名字,地址,和业务的电话号码的信息。提供给一个或多个WEB服务。在黄页项里区分业务类型和业务分类。在绿页项里提供关于业务提供WEB服务的数据。




  更多信息请看http://www.uddi.org

  WEB服务检查语言(WSIL)

  WSIL象UDDI那样,提供了一个发现WEB服务的方法。与UDDI集中式模型不同的是,WSIL用的是一种离散,分布模型,WSIL文档允许WEB服务的顾客在网站上浏览可用的WEB服务。

  WSIL规范提供了用XML格式文档来检查一个WEB服务站点和一系列规则为这些信息是否可用标准。在一个文档里一个WSIL文档搜集了多个参考为预先存的服务描述文档。WSIL文档是驻留在服务提供者的服务里,以便于顾客能查处相关可用的服务。




  更多关于WSIL,请看

http://www-106.ibm.com/developerworks/webservices/library/ws-wsilspec.html.

  Java APIs for XML-based Remote Procedure Call (JAX-RPC)

  JAX-RPC定义了JAVA开发者在他们的开发和应用WEB服务的应用中用到的JAVA应用接口。一个JAVA客户端能应用在INTERNET上的一个远程服务器上的一个WEB服务,即使这个服务在另一种平台,用另一语言编写。一个JAX-RPC服务也能被非JAVA客户端应用。

  JAX-RPC用一种XML消息协议,诸如SOAP,通过网络来传递一个远程过程调用。例如,一个返回股票查询的WEB服务将收到一个 包括客户端的方法调用的SOAP HTTP请求。用JXA-RPC,服务将从SOAP消息里解开方法调用,把它转换成方法调用,接着调用它。接着服务用JAX-RPC把回复方法转换成SOAP,把结果返回客户端。客户端收到SOAP消息,用JAX-RPC转换成一个回复。
 
  JAX-RPC运行时生成允许客户和服务通讯的STUBS和TIES。一个STUB在客户端,代表一个远程服务,作为一个服务的代理。一个TIE,在服务器端,作为服务器端的代理。



  --相关文章--
· 在JBuilder8中使用ANT (2007-04-13)
· JBuilder8新特性 (2007-04-13)
· JBuilder2005实现重构之重命名 (2005-08-23)
· JBuilder2005实现重构之升级到JDK5.0 (2005-08-23)
· JBuilder2005实现重构之对重构的支持 (2005-08-23)
· JBuilder2005实现重构之重构前的侦察 (2005-08-23)

版权所有©2005-2006 JAVA资源网 渝ICP备05007591号 虚拟主机 | 关于我们 | 联系方式 | 广告业务 | 网站地图 | 友情链接