Java与SOAP
黄刚 译
出版时间:2002年12月
页数:312
本书为Java开发人员提供了一个深入了解SOAP(Simple Object Access Protocol,简单对象访问协议)的机会。当然,它介绍了基础性的内容:什么是SOAP,为什么它会在Buzzwords上升至前十位,它有什么特性和能力。它还讲述了如何使用SOAP世界中两个常用的Java API:Apache SOAP与GLUE。
作为基础知识,本书介绍了SOAP消息的结构、SOAP编码以及使用RPC和消息传递来建立简单的服务。除此之外,本书还涵盖了一些在实际开发中非常重要的主题。尽管SOAP天生就已经支持了大量的数据类型,但实际的工作会告诉你,不管SOAP为你提供了多少的数据类型都是不够的。你在什么时候需要添加对你自己的对象类型的支持,你又该如何去做?你如何才能处理错误,怎样将自己的信息添加到错误消息中去?你该如何处理附件?
在理想的世界里,你可以只用Java就够了,可以忽略来回发送的SOAP消息;你也可能会用Java编写代码而让SOAP API在幕后工作。但是,我们并没有生活在这样的理想世界中,至少有时候不是。因此,本书对SOAP消息是如何编码的给予了特别的关注。它不仅解释了文档类型,还展示了一些在实际使用中由不同的API生成的文档。如果你曾被互操作性所困扰,你将发现本书不可或缺。此外,只有深入了解了内幕的人才能编出非常好的软件来,在SOAP中也是这样。假设你要写一个自定义的串行化器来建立对一个结构的SOAP表示。如何才能知道你的代码是高效的呢?这里有一个确定的答案:查看它所产生的SOAP文档。
此外,本书还讨论了主要的SOAP平台(包括微软的.NET)之间的互操作性。它还涉及了SOAP消息传递、SOAP附件、消息路由,并对即将出现的Axis API、JAX-RPC和JAXM进行了前瞻。如果你是一个想要开始学习SOAP的Java程序员,本书正好适合你。
Robert Englander是MindStream软件公司(www.mindstrm.com)的总裁兼首席工程师。他的工作是为软件的体系结构、设计和开发提供咨询,同时也为客户的项目开发基本框架。
- 前言
- 第一章 简介
- RPC和面向消息的分布式系统
- 自我描述数据
- XML
- API规范与传输级规范
- SOAP概述
- SOAP实现
- 本书的编写方式
- 开始吧
- 第二章 SOAP消息
- HTTP绑定
- HTTP请求
- HTTP 响应
- SOAP 封套
- Envelope元素
- Header元素
- actor属性
- mustUnderstand属性
- encodingStyle属性
- 封套版本
- Body元素
- SOAP Fault
- 第三章 SOAP数据的编码
- 模式与名称空间
- 串行化规则
- 指定数据类型
- 默认值
- SOAP的root属性
- 第四章 RPC形式的服务
- SOAP RPC元素
- 一个简单的服务
- 部署服务
- 编写服务客户
- 使用请求级作用域进行部署
- 使用会话级作用域进行部署
- 传递参数
- 第五章 处理复杂数据类型
- 传递数组参数
- 返回数组
- 传递自定义类型参数
- 返回自定义类型
- 第六章 自定义串行化
- 自定义类型的编码
- 第七章 错误和异常
- 在Apache SOAP中抛出一个服务器端异常
- 在Apache SOAP中创建一个错误监听器
- 在GLUE中抛出和捕获异常
- 第八章 可供选择的技术
- SOAP消息传递
- 直接编码
- 第九章 SOAP的互操作性与WSDL
- Web服务描述语言
- 从Apache SOAP客户调用GLUE服务
- 一个使用Apache SOAP的代理服务
- 从GLUE客户调用Apache SOAP服务
- 访问.NET服务
- 编写Apache Axis客户
- 第十章 SOAP Header
- Apache SOAP的提供者和路由器
- 替换提供者和路由器类
- 一个能处理SOAP头的Apache SOAP服务
- 第十一章 JAX-RPC与JAXM
- JAX-RPC
- 不使用Ant来完成工作
- 创建一个JAX-RPC服务
- 创建一个JAX-RPC客户应用程序
- 根据WSDL生成存根
- 动态调用接口
- 用一句话介绍JAXM
- 接下来会是什么?
- 词汇表
书名:Java与SOAP
译者:黄刚 译
国内出版社:中国电力出版社
出版时间:2002年12月
页数:312
书号:7-5083-1312-7
原版书出版商:O'Reilly Media
Robert Englander
Robert Englander是MindStream软件公司(www.mindstrm.com)的总裁兼首席工程师。他的工作是为软件体系结构、设计和开发提供咨询,同时也为客户的项目开发基本框架。他致力于组件体系结构和分布式系统领域的工作。
Rob已使用Java和C++为从小商店到大集团公司之类的客户编写了很多软件。他还在业界会议上做过多次演讲,也为杂志和期刊撰写文章。他还是O'Reilly出版公司的《Developing Java Beans》一书的作者。
本书封面上的动物是一种叫做Pterois volitans的红色火鱼。这些鱼遍布于印度洋和太平洋中100英尺以下的温暖热带水域。它们喜欢一动不动地呆在海底,通常是在暗礁下,等待猎物(主要是一些小鱼和甲壳类动物)的到来。
红火鱼是 科鱼家族的一员 —— 是它们背鳍上的毒刺的名字。由于对保护自己的能力充满自信,火鱼即使在遇到人类时也常常不会回避;相反,它们会将毒刺指向入侵者。它们的自信是有道理的:被它们的毒刺扎一下,对人类来说尽管一般不会致命,但却极其疼痛。
除它们所习惯的海洋环境之外,也常常可以在家庭的热带鱼水族箱中看到红火鱼。它们可以长到16英寸之长,因此往往需要一个相当大的水族箱。不过尽管它们拥有可怕的刺和食肉的天性,它们通常还是非常友善的,而且与其他的鱼类相处得很好 —— 除非那些鱼小到可以被吃掉。