`
卡拉阿风
  • 浏览: 100823 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

WEB Services SOAP notes

 
阅读更多

一. SOAP概述

SOAP(Simple Object Access Protocol),它是一种标准消息传递协议,通常是Web Service的事实标准。SOAP是以XML为基础,SOAP消息格式是由XML Schema模式定义,通过XML命名空间使SOAP具有很强的扩展性。

SOAP message:SOAP XML文档实例,通常通过其他某些网络协议的有效载荷来携带SOAP消息,例如:HTTP, SMTP, TCP/IP等。

Web Service可以使用两种方式:One-Way messaging(单向消息传递)或者Request/Response messaging(请求/响应消息传递)

 

二. SOAP风格中RPC与Document的区别

在 Web 服务描述语言( Web Service Definition Language , WDSL )规范中隐含着一个非常巧妙的转换开关,它可以将Web 服务的 SOAP 绑定从远程过程调用转换成 pass-through 文档。在 SOAP 协议绑定中的样式属性可以包含这两个值中的一个:rpc 或 document 。当属性被设定为文档样式时,客户端知道应该使用 XML 模式而不是远程过程调用约定。

 

如果样式声明为 RPC ,消息就封装在包装器元素中,同时带有从操作名属性中提取的的元素的名称以及从操作名称空间属性中提取的名称空间。

 

三. SOAP消息传递模式

消息传递模式通常描述的是SOAP消息的有效负载:即XML文档段或者是远程过程调用对应的参数和返回值的XML表示。

 

SOAP支持四种消息传递模式(RPC/Literal, Document/ Literal, RPC/Encoded, and Document/Encoded),

但是WS-I Basic Profile只允许RPC/Literal和Document/ Literal,不支持SOAP encoding,因为它会引起严重的互操作性。

Literal表示可以根据XML模式验证XML文档的有效性。

 

3.1 Document/ Literal消息传递模式

Document/ Literal消息传递模式中,SOAP的Body元素包含一个XML格式良好的文档段;

 

3.2 RPC/Literal消息传递模式

RPC/Literal消息传递模式将Body元素格式化成struct。PRC请求消息包含调用的方法名称与输入参数。RPC响应消息则包含返回值和各种输出参数(或者错误)

 

引用自:

WEB Service SOAP http://bldmickey.blog.sohu.com/58932442.html

SOAP风格中 RPC与Document的区别 http://blog.csdn.net/tomholmes7/article/details/2773738

0
0
分享到:
评论

相关推荐

    Lotus NotesDomino 7 Web Services

    Lotus Notes/Domino 7 Web Services 是一种技术,允许开发者将 Lotus Domino 应用程序的功能暴露为可通过互联网访问的 Web 服务。Web 服务是一种基于标准的架构,使得应用程序能够跨平台交换数据和执行功能。在 ...

    java 使用soap进行webservers服务(xml)

    <tag>webservices-20 <type>lite <devtag>D3G5QOONJ8GGC5 <locale>en </SOAP-ENV:Body> </SOAP-ENV:Envelope> ``` 在这个SOAP请求中,我们可以注意到以下几点: - **KeywordSearchRequest** 元素是请求的...

    基于java平台的web服务实现与应用

    此外,IBM的Lotus Notes也支持Web服务标准。 - **Oracle Web Services** - 从Oracle 9i Developer Suite开始,Oracle就集成了对Web服务标准的支持。这使得开发者能够利用Oracle的强大数据库能力构建高性能的Web服务...

    Domino学习资料

    - 使用Apache AXIS 1.1+作为Web Services引擎,支持SOAP和WSDL,简化了Web Services的开发和调用。 6. **DB2支持**: - DAV(DB2 Access Views)允许将Notes数据暴露给DB2应用程序,通过SQL语句实现对数据的操作...

    domino中运用webservice

    首先,Web服务基于开放标准,如SOAP(Simple Object Access Protocol)和WSDL(Web Services Description Language),允许不同系统之间的数据交换,无论它们是用何种编程语言或运行在哪个操作系统上。在Domino中,...

    基于web+service的学校OA系统的设计与实现.pdf

    基于Web+Service的学校OA系统,主要是指将Web技术与服务导向架构(Service-Oriented Architecture,SOA)的服务理念相结合,利用Web服务(Web Services)技术实现系统的分布式计算与信息交互。 知识点详细说明: 1...

    应用Web Service技术实现Domino6系统整合

    Web Service 使用 XML(Extensible Markup Language)作为数据交换格式,通过 SOAP(Simple Object Access Protocol)协议进行消息传递,WSDL(Web Service Description Language)用于描述服务接口,UDDI...

    Domino R8+版本编写及调用webservice样例库

    2. **WSDL(Web Services Description Language)**:创建Web服务后,会生成一个WSDL文件,这是一个XML文档,描述了服务的接口、消息格式和绑定信息,供客户端查找和调用服务。 3. **SOAP协议**:Domino支持SOAP...

    Domino_webservice应用技巧.docx

    调用外部Webservice涉及解析WSDL(Web Services Description Language)文件,创建SOAP消息,然后通过Domino发送请求并处理响应。 ### Lotus Domino V7.0的Web服务支持 Lotus Domino V7.0引入了Web服务设计元素,...

    java webservice flash在domino中的使用

    在Lotus Domino中,Java Web服务可以通过 Domino Java Agent 或者使用 Domino Web Services Toolkit 实现。开发者可以创建一个Java类,该类包含了服务的方法,并将其暴露为Web服务。然后,这些服务可以通过SOAP...

    axis2的war包、项目实例

    可以使用Java代码直接实现服务接口,或者通过WSDL(Web Services Description Language)定义服务接口,然后自动生成Java代码。 2. **服务部署** 服务可以通过多种方式部署到Axis2,包括: - 直接在管理界面上传...

    Axis实践之Axis入门

    在Axis中,你可以生成Java服务端代码,这些代码可以从WSDL(Web Services Description Language)文件中自动生成,也可以手动编写。此外,Axis还支持客户端代理类的生成,使得调用Web服务如同调用本地方法一样简单。...

    axis2-1.5源码

    Axis2是Apache软件基金会开发的一个开放源码的Web服务引擎,它是基于SOAP(Simple Object Access Protocol)和WS-*(Web Services栈)规范的。这个"axis2-1.5源码"提供了对 Axis2 框架核心功能的深入了解,对于...

    python-suds-0.4.1.tar.gz

    在这个例子中,`Client`类用于初始化SOAP客户端,`service`属性对应于WSDL(Web Services Description Language)文件中定义的服务,`some_function`则是服务提供的一个操作,`args`是传递给该操作的参数。...

    ewsj1.20_32t5.zip

    这通常涉及到使用Exchange Web Services (EWS),它是一个基于SOAP的Web服务接口,允许开发者访问Exchange的数据和服务。 2. **发送邮件**:通过EWS,开发者可以创建、发送和管理电子邮件。这可能涉及到构建邮件对象...

    Bugzilla-Guide.pdf

    - **Web服务器**:为了能够通过Web访问Bugzilla,需要配置一个支持CGI的Web服务器,如Apache或Microsoft Internet Information Services (IIS)。 - **Bugzilla软件包**:从官方网站下载最新版本的Bugzilla源代码包。...

Global site tag (gtag.js) - Google Analytics