在Domino 6中使用外部Web服务2010-07-21 IBM Jeff Gunther什么是Web服务?Web服务允许组织将现有的业务流程扩展为发布的服务。开发人员使用这些服务,可以构建松散耦合的软件组件,同时,便于应用程序之间的信息交换和集成。和基于 Web的传统 Domino 应用程序不一样,Web服务并没有终端用户操作的用户界面,但是提供了一个统一的方式,执行流程和进行数据交换。Web服务基于如下三个技术标准:可扩展标记语言(eXtensible Markup Language , XML) ,它是Web服务背后的驱动力。XML 语言并不是一种编程语言或者 API,而是一种独立于平台的组织数据的方式。XML的语法便于通过编程来处理文本数据,同时又便于为人们所理解。Web服务使用 XML 作为标准,在网络设备之间进行通信。简单对象访问协议(Simple Object Access Protocol , SOAP),开发人员可以使用这种独立于平台的机制,远程调用分布式对象的方法。SOAP 消息的通信使用 XML 来描述对象、方法以及执行的参数。客户机和服务器都可以实现和使用 SOAP。既然这样,SOAPConnect for LotusScript 包可以方便的使用它的实现,开发人员可以不用处理底层的XML。Web服务描述语言(Web Service Description Language,WSDL)定义了 Web服务中可用的端口和操作。你可以把端口看作一个接口,而把操作看作对一个特定对象所调用的方法。图书目录案例在查看这些使用了 SOAPConnect for LotusScript的代码和实现细节之前,先介绍一下包含的样本数据库的目的和结构。样本数据库是一个简短的图书目录,包括多种园艺书籍。数据库的目标是让用户可以获得类别中图书的最新价格。数据库包含了一个 Form ,称为 Book,包括了类别中的每一本书。Book form 包括了 5 个域,用来描述每一本书:图书标题,图书封面,图书作者,ISBN 号,出版社。用户可以通过 Web 浏览器查看可用图书的列表,这样使用 All Book 视图,如下 图 1 所示。

正如大家所料,在视图中选择了一本书之后,用户就可以看到这本书的详细信息。

对于大多数在线零售商来说,书的价格随着供求波动。用户选择 Get Price 按钮,可以获得最新价格。这里我们使用了Barnes & Noble 提供的Web服务和 SOAPConnect for LotusScript 包。