- 1、本文档共15页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
WebService CXF学习——进阶篇
WebService CXF学习——进阶篇
2010年12月13日 星期一 下午 10:18
进阶篇1——SOAP讲解
??? SOAP 是基于 XML 的简易协议,可使应用程序在 HTTP 之上进行信息交换。或者更简单地说:SOAP 是用于访问网络服务的协议。 ??? 您应当具备的基础知识 ??? 在继续学习之前,您需要对下面的知识有基本的了解: ??????? * XML ??????? * XML 命名空间 ??? Why SOAP???? 对于应用程序开发来说,使程序之间进行因特网通信是很重要的。 ??? 目前的应用程序通过使用远程过程调用(RPC)在诸如 DCOM 与 CORBA 等对象之间进行通信,但是 HTTP 不是为此设计的。RPC 会产生兼容性以及安全问题;防火墙和代理服务器通常会阻止此类流量。 ??? 通过 HTTP 在应用程序间通信是更好的方法,因为 HTTP 得到了所有的因特网浏览器及服务器的支持。SOAP 就是被创造出来完成这个任务的。 ??? SOAP 提供了一种标准的方法,使得运行在不同的操作系统并使用不同的技术和编程语言的应用程序可以互相进行通信。 ??? Microsoft 和 SOAP??? SOAP 是微软 .net 架构的关键元素,用于未来的因特网应用程序开发。 ??? SOAP 1.1 被提交到 W3C ??? 在 2000 年 5 月,UserLand、Ariba、Commerce One、Compaq、Developmentor、HP、IBM、IONA、Lotus、Microsoft 以及 SAP 向 W3C 提交了 SOAP 因特网协议,这些公司期望此协议能够通过使用因特网标准(HTTP 以及 XML)把图形用户界面桌面应用程序连接到强大的因特网服务器,以此来彻底变革应用程序的开发。 ?? W3C 正在发展 SOAP 1.2 ?? 首个关于 SOAP 的公共工作草案由 W3C 在 2001 年 12 月发布。如需阅读更多有关在 W3C 的 SOAP 活动的内容,请访问我们的《W3C 教程》。 ?? SOAP 构建模块 ??? 一条 SOAP 消息就是一个普通的 XML 文档,包含下列元素: ??? * 必需的 Envelope 元素,可把此 XML 文档标识为一条 SOAP 消息 ??? * 可选的 Header 元素,包含头部信息 ??? * 必需的 Body 元素,包含所有的调用和响应信息 ??? * 可选的 Fault 元素,提供有关在处理此消息所发生错误的信息
??? 所有以上的元素均被声明于针对 SOAP 封装的默认命名空间中: ??? HYPERLINK /2001/12/soap-envelope /2001/12/soap-envelope??? 以及针对 SOAP 编码和数据类型的默认命名空间: ??? HYPERLINK /2001/12/soap-encoding /2001/12/soap-encoding
语法规则 ??? 这里是一些重要的语法规则: ??? * SOAP 消息必须用 XML 来编码 ??? * SOAP 消息必须使用 SOAP Envelope 命名空间 ??? * SOAP 消息必须使用 SOAP Encoding 命名空间 ??? * SOAP 消息不能包含 DTD 引用 ??? * SOAP 消息不能包含 XML 处理指令
SOAP 消息的基本结构 Java代码 1.??xml version=1.0???? 2.?soap:Envelope??? 3.?xmlns:soap= HYPERLINK /2001/12/soap-envelope /2001/12/soap-envelope?? 4.?soap:encodingStyle= HYPERLINK /2001/12/soap-encoding /2001/12/soap-encoding??? 5.??? 6.?soap:Header??? 7.??? ...??? 8.??? ...??? 9.?/soap:Header??? 10.??? 11.?soap:Body??? 12.??? ...??? 13.??? ...??? 14.??? soap:Fault??? 15.????? ...??? 16.????? ...??? 17.??? /soap:Fault??? 18.?/soap:Body??? 19.??? 20.?/soap:Envelope??
SOAP Envelope 元素 ??? 必需的 SO
文档评论(0)