资源预览内容
第1页 / 共76页
第2页 / 共76页
第3页 / 共76页
第4页 / 共76页
第5页 / 共76页
第6页 / 共76页
第7页 / 共76页
第8页 / 共76页
第9页 / 共76页
第10页 / 共76页
亲,该文档总共76页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
山东大学计算机科学与技术学院 Web Service 山东大学计算机科学与技术学院 Web 服务 从服务谈起 产品有限 服务无限 应用基地化 application hosting 软件正变为服务 所谓 应用基地化 是指软件厂家在自己的服务器上运行应用程序 经由Internet将其结果提供给用户企业利用 这使得用户将通过租 软件而不是买软件来满足自己的需要 以Oracle和Microsoft为首的主要软件厂家 开始真正加入应用基地 化等服务事业 各厂家正加强同应用服务提供商 Application Service Provider ASP 的合作关系 山东大学计算机科学与技术学院 ASP在兴起 开始对服务下大力气的软件公司 正对经由Internet简单地分发自己 软件产品的管理模式进行改造 使得软件公司本身和第三方 可以 通过远程操作支持应用 例如 德国SAP公司已开始提供名为 Business Scenario 的服务 这 是一种提供在Web环境下利用的一群软件组件所构成的应用服务 IBM的服务事业部门从事eBusiness应用基地化的负责人认为 企业 今后将像使用电话一样 按使用量支付软件使用费 这一时刻的到 来便意味着软件业革命的开始 山东大学计算机科学与技术学院 Web service的出现背景 Web应用的快速发展 企业应用的集成整合要求迫切 EAI Enterprise Application Integration B2Bi B2B Integration 语言差异 平台差异 协议差异 数据差异带 来高代价的系统集成 山东大学计算机科学与技术学院 Web Service的概念 提供一个与操作系统无关 与程序设计语言无关 与机器 类型无关 与运行环境无关的平台 实现网络上应用的共 享 A Service is a piece of software that is not tightly coupled with Client applications Services are dynamically discoverable and composable entities Web服务的体系结构与Web应用的N层结构类似 区别在于 顶层的面向浏览器的Web Server被面向程序的 Web Service Client 的Web服务所取代 山东大学计算机科学与技术学院 Web Service特点 Web 服务是用标准的 规范的 XML 概念描述一些操作的 接口 利用标准化的 XML 消息传递机制可以通过网络访 问这些操作 该接口隐藏了实现服务的细节 允许独立于实现服务所基 于的硬件或软件平台和编写服务所用的编程语言使用服务 Web 服务履行一项特定的任务或一组任务 Web 服务可以单独或同其它 Web 服务一起用于实现复杂 的聚集或商业交易 山东大学计算机科学与技术学院 部署在Web上的对象 从外部使用者的角度来看 Web Service是部署在 Web上的对象 具备以下特征 完好的封装性 数据和处理 松散耦合 使用协约的规范性 标准化 高度可集成能力 山东大学计算机科学与技术学院 部署在Web上的对象 对象界面描述 WSDL 对象访问 SOAP 对象界面发现 UDDI 对象实现 EJB COM CORBA以及任何可用于对象 实现的技术 UDDI WSDL SOAP EJB COM CORBA 山东大学计算机科学与技术学院 XML int age 方法的定义 zhang3 20 山东大学计算机科学与技术学院 What is SOAP SOAP没有定义任何底层的传输协议 可以使用HTTP FTP SMTP或者JMS 甚至是自定义协议来传输SOAP 报文 一般使用HTTP协议 从某种意义上讲 SOAP可以简单理解为 HTTP XML RPC HTTP作为底层通信协议 RPC作为一致性的调用途径 XML作为数据传输的格式 SOAP的调用效率比较低 HTTP不是有效率的通信协议 XML需要额外的文件解析 山东大学计算机科学与技术学院 SOAP Hides the Implementation User SOAP Request SOAP Response Service Provider HTTP Server SOAP Processor 用户只需要了解SOAP消息的格式 而对底层实现的细节可以无需关心 EJB Corba DCOM 山东大学计算机科学与技术学院 工作过程 一个简单的SOAP请求 响应 用XML打包请求 将接口名作为根结点 方法和参数作为结点 将请求发送给服务器 不创建自己的TCP IP消息 利用HTTP 将请求封装成HTTP POST请求格式发出 John public interface Hello public String sayHelloTo String name 山东大学计算机科学与技术学院 一个简单的SOAP请求 响应 服务器接收到请求 解码XML 处理请求 然后以 XML格式向客户发送响应 与请求比较 方法的结点名字变为请求的方法名后缀Response 客户程序知道自己调用了哪个方法 根据方法名后缀Response 寻找调用方法的返回值 Hello John How are you 山东大学计算机科学与技术学院 SOAP Message structure Request Response Message Request 调用远端对象的某个方法 Response 返回该方法运行后的输出结果 User SOAP Request SOAP Response Service Provider Web Service 山东大学计算机科学与技术学院 SOAP Message structure SOAP 定义了一个 envelope 对象 使用 envelope 包装消息自身 消息可以采用自身特定的XML词汇 Message Envelope SOAP 词汇集 自定义 词汇 山东大学计算机科学与技术学院 A SOAP Request Message MSFT 山东大学计算机科学与技术学院 A SOAP Response Message 78 2 山东大学计算机科学与技术学院 SOAP术语 SOAP header 能够被SOAP消息路径中任意的SOAP接收者处理的一组SOAP条目 0个或多个 SOAP body 能够被SOAP消息路径中的最终SOAP接收者处理的一组SOAP条目 0个或多个 SOAP fault SOAP节点产生的用于包含错误信息的特殊的SOAP条目 SOAP Envelope SOAP Header SOAP Block SOAP Block SOAP Body SOAP Block SOAP Block 山东大学计算机科学与技术学院 SOAP术语 消息发送者和接收者概念 SOAP发送者 发出SOAP消息的节点 SOAP接收者 接收SOAP消息的节点 SOAP消息路径 为传送一个简单的SOAP消息而要经过的一组SOAP发送者和SOAP接收者 其中包含了初始 SOAP发送者 0个或多个SOAP中介以及最终SOAP接收者 初始SOAP发送者 SOAP消息的最初产生者 消息路径中的第一个节点 SOAP中介 中介既是发送者 又是接收者 处理一组确定的SOAP条目 然后将SOAP消息转发给消息路径 上的下一个SOAP节点 最终SOAP接收者 由初始SOAP发送者指定的通过SOAP消息路径传送SOAP消息的最终SOAP接收者 如果在 SOAP消息路径中有SOAP节点产生了SOAP错误 则消息将不会到达最终接收者 山东大学计算机科学与技术学院 SOAP消息 SOAP消息由一个强制的SOAP Envelope 一个可选的SOAP Header和一个强 制的SOAP Body组成的XML文档 SOAP Envelope 表示一个SOAP消息的顶级元素 SOAP Header Header是为了支持在松散环境下在通信方之间尚未预先达成一致的情况下为 SOAP消息增加特性的通用机制 SOAP定义了很少的一些属性来用于指明谁可 以处理该特性以及它是可选的还是强制的 SOAP Body Body为该消息的最终接收者所想要得到的那些强制信息提供了一个容器 此外 SOAP定义了Body的一个字元素Fault用于报告错误 山东大学计算机科学与技术学院 SOAP RPC表示 利用XML的可扩展性和可伸缩性来包装和交换RPC调用 为实施一个方法调用 需要以下信息 目标SOAP节点的URI 方法名 可选的方法或过程的特征 方法或过程的参数 可选的头数据 RPC调用和响应都是在SOAP Body元素中传递 山东大学计算机科学与技术学院 SOAP请求 John 山东大学计算机科学与技术学院 SOAP响应 Hello John How are you doing 山东大学计算机科学与技术学院 绑定到HTTP的SOAP 将SOAP绑定到HTTP上可以利用HTTP丰富的特性 SOAP很自然的利用HTTP的请求 响应机制 山东大学计算机科学与技术学院 SOAP请求 HTTP POST http www SmartH HTTP 1 0 Content Type text xml charset utf 8 Content Length 587 SOAPAction http www SmartH Tarak 山东大学计算机科学与技术学院 SOAP响应 HTTP HTTP 1 0 200 OK Content Type text xml charset utf 8 Content Length 615 Hello John How are you doing 山东大学计算机科学与技术学院 UDDI and SOAP User Client UDDI SOAP Request UDDI SOAP Response UDDI Registry Node HTTP Server SOAP Processor UDDI Registry Service B2B Directory Create View Update and Delete registrations Implementation neutral 山东大学计算机科学与技术学院 Web Service 与企业集成 山东大学计算机科学与技术学院 Web Service的应用前景 电子商务应用 传统电子商务 动态电子商务 集成企业原有系统 利用Web Service的高度可集成特性 将企业运作的各个环节有效的联系起来 组成一个协同工作的 整体 从而使得企业的所有业务都真正 自动化 起来 目前存在问题 效率问题 安全性 事务特性等高级特性的支持 山东大学计算机科学与技术学院 Web service 与应用集成需求 大多数企业都有遗留下来的异构的系统 企业资源规划 客户关系管理 供应链管理 企业门户 山东大学计算机科学与技术学院 EAI Solution 企业应用集成 EAI 通过建立地层结构 来联系横贯整个企业 的异构系统 应用 数据源等 山东大学计算机科学与技术学院 使用Web Services的内部集成 注注 山东大学计算机科学与技术学院 全面启动Web Services浪潮 IT Vendor积极投入 IBM Microsoft Oracle HP Sun BEA SAP等 标准化组织 W3C World Wide Web Consortium 创立于1994年10月 致力于 领导万维网 制定公共的协议 促进万维网的发展并确保其互操作 性 OASIS Organization for the Advancement of Structured Information Standards 是一个致力于推动结构信息标准化的国际 组织 应用推广组织 WS I org 山东大学计算机科学与技术学院 Web Services Software Evolution NOT
收藏 下载该资源
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号