- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
04-服务计算基础(SOAP)
SOAP Engine 解析报文 序列化 安全处理…… 调用服务实现 构造响应消息 SOAP Message Service Implement public class myServices { public void myMethod (int x){ return; } } SOAP Engine SOAP Engine soap:envelope soap:body myMethod x xsi:type=xsd:int5/x /myMethod /soap:body /soap:envelope Web Service Server SOAP引擎 Java应用 Java应用 Java应用 Web Service Server 多个协议端口的侦听 传输协议扩展,例如断点续传能力 调度器,实现线程维护 负载,Qos 部署管理,配置管理 协议侦听器1 协议侦听器2 协议侦听器3 协议侦听器n 调度器线程 SOAP消息队列 Web Service Server Web Server/ Web Service Server SOAP引擎 Java应用 Java应用 Java应用 Servlet HTTP Web Service Server in Web Server 优点 公认的技术标准 清晰的消息描述 开放的消息结构 灵活的消息模式 灵活的协议绑定 …… 缺点 慢 适合传输小规模的数据 小结 思考与讨论题 SOAP是用来干什么的? 简述SOAP消息的结构 SOAP的消息交换方式有哪几种? SOAP处理引擎的功能有哪些? SOAP的优缺点 * SOAP是实现web服务的核心协议之一。 SOAP协议的数据格式满足XML文档的语法要求。它并没有指定一定要采用的通讯协议,目前一般使用HTTP协议,因为这样使得数据更容易通过防火墙的限制。该协议起源于Microsoft的BizTalk项目,目前已经被W3C组织接收成为国际标准。它对数据及通讯过程的定义非常简单,是一种轻量级的协议。 SOAP为在一个松散的、分布的环境中使用XML对等地交换结构化的和类型化的信息提供了一个简单的轻量级应用。Soap本身并不定义任何应用语义,如编程模型或特定的语义实现,它只是定义了一种简单的机制,通过一个模块化的包装模型和对模块中特定格式编码机制来表示应用语义。 * * * * * * * * * * * * * * SOAP relay属性信息项用于指出,如果定位于SOAP接收者的SOAP头块没有被处理,那么是否必须转发该头块 relay属性信息项的类型为xs:boolean 省略该属性,在语义上等价于包含值为”false”的relay属性 如果生成SOAP relay属性信息项,SOAP发送者应该使用规范的形式表示属性值“true”。SOAP接收者必须接收该属性值任何有效的词法表示 生成SOAP消息的SOAP发送者应该只在SOAP头块中使用relay属性信息项 SOAP relay属性 SOAP Body元素提供一个简单的用于与消息的最终接收者交换强制信息的机制。而Body元素的典型应用包含序列的RPC调用和错误报告 Body元素在编码上作为SOAP Envelope元素的一个直接子元素。如果包含Header元素,则Body元素必须直接跟随Header元素,否则Body元素必须是Envelope元素的第一直接子元素 所有Body元素的直接子元素被称为SOAP Body条目,同时每一个Body条目都应当编码为SOAP Body元素里的一个独立元素 SOAP Body Body条目的编码规则: 一个Body条目由一个完整修饰的元素名来标识,所谓完整修饰的元素名是由一个命名空间URI和局部名来组成。SOAP Body元素的直接子元素可以是命名空间修饰的 SOAP encodingStyle属性可以被用来表明Body条目中使用的编码规则 SOAP定义了一个Body条目,用于报告错误的Fault条目 SOAP Body SOAP Fault元素是用于在SOAP消息中传输错误或状态信息。如果SOAP消息需要包含SOAP Fault元素的话,它必须作为一个Body条目出现,同时在Body元素内它必须至多出现一次 SOAP Fault元素定义了如下子元素: 1.faultcode元素为那些要提供一个算法上的机制来标识错误的软件之用。faultcode必须在SOAP Fault元素中出现。SOAP定义了一个很小的SOAP错误代码的集合用于覆盖基本的SOAP错误。 2.faultstring元素是为那些错误代码提供一个人可以读懂的错误解释,它不是为程序处理
文档评论(0)