WebService使用SOAP协议实现跨编程语言和跨操作系统平台
WebService采用HTTP协议传输数据,采用XML格式封装数据(即XML中说明调用远程服务对象的哪个方法,传递的参数是什么,以及服务对象的返回结果是什么)。WebService通过HTTP协议发送请求和接收结果时,发送的请求内容和结果内容都采用XML格式封装,并增加了一些特定的HTTP消息头,以说明HTTP消息的内容格式,这些特定的HTTP消息头和XML内容格式就是SOAP协议(simple object access protocol,简单对象访问协议) 。
SOAP协议 = HTTP协议 + XML数据格式
SOAP协议是基于HTTP协议的,两者的关系就好比高速公路是基于普通公路改造的,在一条公路上加上隔离栏后就成了高速公路。
商店的服务员只要收到了钱就给客户提供货物,商店服务员不用关心客户是什么性质的人,客户也不用关心商店服务员是什么性质的人。同样, WebService客户端只要能使用HTTP协议把遵循某种格式的XML请求数据发送给WebService服务器, WebService服务器再通过HTTP协议返回遵循某种格式的XML结果数据就可以了,WebService客户端与服务器端不用关心对方使用的是什么编程语言。
HTTP协议和XML是被广泛使用的通用技术,各种编程语言对HTTP协议和XML这两种技术都提供了很好的支持,WebService客户端与服务器端使用什么编程语言都可以完成SOAP的功能,所以,WebService很容易实现跨编程语言,跨编程语言自然也就跨了操作系统平台。
WSDL文件
好比我们去商店买东西,首先要知道商店里有什么东西可买,然后再来购买,商家的做法就是张贴广告海报。 WebService客户端要调用一个WebService服务,首先要有知道这个服务的地址在哪,以及这个服务里有什么方法可以调用,所以,WebService务器端首先要通过一个WSDL文件来说明自己家里有啥服务可以对外调用,服务是什么(服务中有哪些方法,方法接受的参数是什么,返回值是什么),服务的网络地址用哪个url地址表示,服务通过什么方式来调用。
WSDL(webservice description language)是基于XML格式的,它是WebService客户端和服务器端都能理解的标准格式,其中描述的信息可以分为what,where,how等部分!
WSDL文件保存在Web服务器上,通过一个url地址就可以访问到它。客户端要调用一个WebService服务之前,要知道该服务的WSDL文件的地址。WebService服务提供商可以通过两种方式来暴露它的WSDL文件地址:
注册到UDDI服务器,以便被人查找
直接告诉给客户端调用者,例如,在自己网站给出信息或邮件告诉。
WebService的客户端编程原理
代理图
我们给这各类WebService客户端API传递wsdl文件的url地址,这些API就会创建出底层的代理类,我调用这些代理,就可以访问到webservice服务。代理类把客户端的方法调用变成soap格式的请求数据再通过HTTP协议发出去,并把接收到的soap数据变成返回值返回。
相关推荐
**WebService学习笔记** WebService是一种基于互联网的、平台和语言无关的接口规范,它允许不同系统间的应用程序进行交互和数据共享。这项技术的核心是利用XML(可扩展标记语言)作为数据交换格式,SOAP(简单对象...
什么是webservice? 从案例(便民查询网站)分析如何实现? 使用socket实现。 使用jaxws开发webservice。 Webservice三要素 Wsdl(webservice使用说明书)重点掌握 Soap(jaxws开发webservice的传输协议)重点掌握...
### WebService 学习笔记 #### 一、发布 WebService **WebService** 是一种标准的跨平台通信协议,它允许应用程序之间通过网络进行数据交换。在 SAP 环境下,发布 WebService 主要是通过 ABAP 程序实现。 ##### 1...
webservice学习笔记1DTD是为了校验XML 2语法 3 schema
### Spring2 + CXF 实现 WebService 的关键知识点 #### 一、概述 在现代软件架构设计中,WebService 是一种非常重要的技术手段,它能够帮助开发者实现不同系统间的交互和服务共享。Spring 框架与 Apache CXF 结合...
本资料包包含了关于WebService的源码和笔记,旨在帮助学习者深入理解并实践WebService的相关技术。 源码部分可能涵盖以下几个关键点: 1. **SOAP消息结构**:源码中可能会展示如何构建一个SOAP请求或响应消息。...
- 发布Web Service需要定义Service Endpoint Interface (SEI),使用`@WebService`和`@WebMethod`注解,然后通过`Endpoint.publish(url, SEIImplObject)`发布服务。 - 请求Web Service时,通常先根据WSDL文档生成...
2. **使用wsimport命令生成客户端代码** - `wsimport`是Java平台提供的工具,用于从WSDL文档生成客户端所需的Java代码。 - 常见选项包括: - `-s`:指定生成的代码的存储位置,默认为当前目录。 - `-p`:指定...
Axis2是Apache组织提供的一款高性能、可扩展的WebService框架,它支持SOAP、REST等多种协议,并且提供了丰富的工具和API,便于开发者快速构建和部署WebService。 ##### 2. XFire XFire是一款轻量级的WebService...
学习本次公开课你将收获和体会到什么: 学习完本次公开课,你将深入理解Web Service,快速上手企业开发。 主要讲解内容如下: Web Service是什么? Web service的优势和前景 Web Service和Web服务器的区别?...
在本篇WebService学习笔记中,我们将探讨几个关键的概念和技术,包括SOAP协议、JAX-WS、WSDL文档以及一些常用的Web服务框架。 首先,SOAP(Simple Object Access Protocol)是一种基于XML的协议,用于在分布式环境...
在本学习笔记中,主要介绍了使用Apache Axis2框架来开发和测试Web Service的过程。Apache Axis2是Apache SOAP栈的一个实现,提供了简单且高效的Web Service开发工具。 首先,开发者需要在Eclipse集成开发环境中搭建...
### OracleEBS-WebService开发笔记知识点总结 #### 一、概述 **OracleEBS-WebService开发笔记** 是一份详尽的文档,旨在介绍如何利用 WebService 技术进行 Oracle E-Business Suite (EBS) 的集成开发。该文档由 ...
【WebService学习笔记0001】 在IT领域,WebService是一种基于开放标准(如XML、SOAP、WSDL和UDDI)的互操作性技术,它允许不同系统间的应用程序通过网络进行通信。本学习笔记将围绕WebService的核心概念、工作原理...
【燕青WebService笔记】 在IT行业中,Web Service是一种基于开放标准的、用于应用程序之间的通信技术。它允许不同的系统之间交换数据和服务,无论这些系统是由何种编程语言或平台构建的。燕青WebService笔记主要...
分布式通信框架-webservice 分析笔记 本文对分布式通信框架-webservice 进行了深入的分析和讨论,涵盖了 webservice 的定义、特点、协议层、SOAP 协议、WSDL 文件、SEI 接口等方面。 一、webservice 的定义和特点 ...
日常笔记-WebService