SOAP(Simple Object Access Protocol )简单对象访问协议是在分散或分布式的环境中交换信息的简单的协议,是一个基于XML的协议.
它包括四个部分:
- SOAP封装(envelop): 封装定义了一个描述消息中的内容是什么,是谁发送的,谁应当接受并处理它以及如何处理它们的框架;
- SOAP编码规则(encoding rules): 用于表示应用程序需要使用的数据类型的实例;
- SOAP RPC表示(RPC representation): 表示远程过程调用和应答的协定;
- SOAP绑定(binding): 使用底层协议交换信息。
SOAP采用了已经广泛使用的两个协议:HTTP和XML。其中HTTP用于实现SOAP的RPC风格的传输,而XML是它的编码模式,一个SOAP请求实际上就是一个HTTP POST请求。
WSDL (Web Services Description Language)是一种XML Application,他的作用是将一个Web Services描述为一组服务访问点.
WSDL文档将一个Web Services描述成一组网络端点或者端口,在WSDL中,由于服务访问点和消息的抽象定义已经和具体的服务期部署和数据格式绑定分离,因此可以再次使用这些抽象对象: 消息,是对需要交换信息的抽象描述;端口类型,是对Web Service提供的操作的抽象集合。
特定端口类型的具体协议和数据格式定义构成了一个可以从用的绑定,一个端口定义成一个可重用绑定和网络地址的关联,一组端口构成了一个服务。
WSDL在定义Web Sevices时使用了以下元素:
- Types: 数据类型的容器,他采用一些类型系统(比如常用的XSD)
- Message: 通信消息的抽象类型化定义
- Operation: 服务提供的操作的抽象化描述
- Port Type: 一个或者多个端点支持的一组操作的抽象
- Binding: 特定端口类型的具体协议和数据格式定义
- Port:定义为binding和网络地址的关联的单个的端点
- Service: 一组相关的端点的结合
http://www.ibm.com/developerworks/cn/webservices/ws-soapacc/
相关推荐
通过本文的探讨,我们不仅了解了在C#中动态调用WebServices的必要性和优势,还深入剖析了其实现的技术细节,包括CodeDom、WebClient、反射机制以及对XML/SOAP协议的基本理解。掌握了这些知识后,开发者将能够在更加...
在Java世界中,调用Web服务通常使用JAX-WS(Java API for XML Web Services)或者Apache Axis库。以下是基本流程: 1. **生成Stub类**:使用wsimport工具或Axis的wsdl2java命令,从WSDL文件生成服务的Stub类。 2. ...
本文将深入探讨如何使用Ajax调用Web服务(Webservices),以实现客户端与服务器端的异步通信。 一、Ajax基础 Ajax的核心是JavaScript对象XMLHttpRequest,它提供了与服务器进行交互的能力。通过创建XMLHttpRequest...
标题“vc调用Webservices”指的是使用VC++编程语言来与Web服务进行交互。在Windows环境中,这通常涉及使用MSXML库或ATL(Active Template Library)来构建SOAP请求,并发送到Web服务的URL,然后解析返回的SOAP响应。...
在C++中调用Web服务通常涉及使用SOAP(简单对象访问协议),这是一个轻量级的协议,用于交换结构化和类型化的信息。 在这个项目中,我们有以下几个关键文件: 1. **ButterflyWEB.cpp** 和 **ButterflyWEB.h**:这...
通常,这涉及到在Web.config文件中配置服务,将自定义的SOAP Extension类添加到`<webServices>`元素的`soapExtensionTypes`子元素中,并指定适当的`type`和`priority`。 在深入研究源码之前,建议先熟悉.NET Web ...
总结,C#调用Web服务涉及了SOAP通信、WSDL导入、代理类生成、服务调用、异常处理、异步操作以及安全性等多个方面。理解并掌握这些知识点,将有助于开发出健壮且高效的Web服务客户端应用。在实际开发中,还需要根据...
在PB中调用WebServices,通常需要使用PowerBuilder的.NET DataWindow或者WebService对象。.NET DataWindow对象可以用来访问.NET Framework中的WebServices,而WebService对象则适用于WSDL(Web Services Description...
开发者可以使用WSDL文档来描述SOAP消息的结构和调用方式,使得其他系统能够发现并理解如何与该服务交互。 3. **UDDI(Universal Description, Discovery, and Integration)**:UDDI是一种标准的目录服务,用于发布...
在调用Web服务时,Delphi开发者需要构建符合SOAP规范的XML消息。 在Delphi中,可以使用 Indy 或 WinHTTP 组件库来实现HTTP POST请求。这里以Indy为例,其TIdHTTP组件提供了一种简单的方式来发送HTTP请求。首先,...
本文将详细介绍如何使用Java来调用WebServices,并通过具体的例子进行说明。 #### 二、基础知识 1. **WebServices简介**: - WebServices是一种跨平台的服务,用于在分布式环境中提供功能。 - 它们通常基于XML、...
参考代码.txt文件可能包含了一些示例代码,演示如何使用SOAP调用Web服务,特别是积分接口。通常,这会涉及到创建SOAP请求消息,设置必要的Header和Body信息,然后发送请求并解析返回的SOAP响应。在Java中,可能使用...
SOAP(Simple Object Access Protocol)是Web Services中最常用的通信协议,它定义了消息结构和传输方式。 在这个实例中,我们可能会使用到SOAP请求来获取天气预报信息。SOAP消息通常包含三个主要部分:Envelope、...
要在Java中使用Axis2调用Web服务,首先需要在项目中添加Axis2的依赖库。这可以通过Maven或者直接下载jar包到项目的类路径中实现。然后,使用wsimport工具生成客户端 stubs,这些stubs将根据WSDL文件自动创建客户端...
Java 使用 XFire 创建和调用 WebServices 是一个常见的任务,特别是在构建分布式系统和服务导向架构(SOA)中。XFire 是一个 Java 框架,它简化了 WebService 的开发和消费过程。在这个主题中,我们将深入探讨如何...
在Java中,可以使用JAX-WS(Java API for XML Web Services)库来创建和消费SOAP服务。 2. **EWS Managed API**: 微软提供了.NET框架下的EWS Managed API,但Java开发者通常会依赖第三方库,如Apache CXF或JAXB,来...
在Java中调用.NET Web Services主要依赖于SOAP(简单对象访问协议)和WSDL(Web服务描述语言)。首先,你需要生成一个Java Web Service,这可以通过JBuilder完成。在JBuilder中,你可以创建一个新的Web服务项目,...