首页 | 邮件资讯 | 技术教程 | 解决方案 | 产品评测 | 邮件人才 | 邮件博客 | 邮件系统论坛 | 软件下载 | 邮件周刊 | 热点专题 | 工具
网络技术 | 操作系统 | 邮件系统 | 客户端 | 电子邮箱 | 反垃圾邮件 | 邮件安全 | 邮件营销 | 移动电邮 | 邮件软件下载 | 电子书下载

邮件服务器

技术前沿 | Qmail | IMail | MDaemon | Exchange | Domino | 其它 | Foxmail | James | Kerio | JavaMail | WinMail | Sendmail | Postfix | Winwebmail | Merak | CMailServer | 邮件与开发 | 金笛 |
首页 > 邮件服务器 > Lotus Domino > 集成 IBM Lotus Domino 数据和 Microsoft SharePoint Services > 正文

集成 IBM Lotus Domino 数据和 Microsoft SharePoint Services

出处:IBM 作者:Tony Patton (aspatton@bellsouth.net), 顾问 时间:2007-7-27 2:02:59

集成,不要迁移。本文将向您展示集成 IBM Lotus Domino 和 Microsoft Windows SharePoint Services 是件多么轻松的事情。还介绍了使用标准 HTTP 请求或 XML 来访问 SharePoint 安装中的 Lotus Domino 数据。

多年来,Microsoft 一直在关注 IBM Lotus Domino 产品线。不久以前,Microsoft Exchange Server 打算取代 Lotus Domino 在企业前景中的地位。虽然并没有实现预期目标,但 Microsoft 继续以备受推崇的 Lotus Domino 平台为竞争目标。Microsoft Windows SharePoint Services 是最新的 Microsoft 协作产品;它可以独立使用或与众多其他 Microsoft 产品相结合来构建应用程序,尝试提供与 Lotus Domino 相似的功能。

SharePoint 参与竞争后,很多客户错误地认为他们必须在 SharePoint 或 Lotus Domino 中作出选择;但是,这两个平台可以和平共存,协同工作。您可以方便地利用二者的强大功能。本文研究了将基于 Domino 的数据和应用程序集成到 SharePoint 环境中的各种方法。文章以 SharePoint 平台的简单介绍作为开始。

本文使用了以下工具:

  • Microsoft Windows Server 2003 with SharePoint Services
  • Lotus Domino V7.0.1
  • IBM Lotus Domino Designer V7.0.1

什么是 Microsoft SharePoint?

Microsoft SharePoint 仅仅是众多 Microsoft 产品中的其中之一,是作为 Lotus Domino 的替代产品问世的。但是,若要复制 Lotus Domino 的众多功能,还需要 Microsoft Exchange、Microsoft Visual Studio .NET 以及其他产品,仅凭 SharePoint 并不够。实际上,SharePoint 是一种门户服务器,将不同资源放在单个 Web 界面中。这些资源可以是 Web 站点、后端数据、文件系统资源(如文档)等等。现在存在两种风格的 SharePoint 产品:

  • Microsoft Windows SharePoint Services
    该核心产品提供了 SharePoint 的基本功能以及用于构建站点的各种模板。从 Windows Server 2003 开始,它可以作为标准组件使用。它是以 Microsoft .NET Framework 为基础的。
  • Microsoft Office SharePoint Portal Server
    该服务器提供了分组并组织单个的站点和列表,以及跨多站点进行搜索的功能。它以 Windows SharePoint Services 为核心,添加了更广泛的功能。

这两个版本的 SharePoint 都使用 Microsoft SQL Server 作为后端数据存储。SharePoint 的具体细节不在本文所讨论的范围之内。我们着重讨论将基于 Domino 的数据和应用程序集成到 SharePoint 安装中的方法。





SharePoint 和 Lotus Domino 的集成

最近,我们收到一位客户打来的电话,他提出了有关将现有 Domino 数据迁移到新的 SharePoint 安装中的想法。由于这位客户有着大型的 Domino 安装,因此这种提议存在问题。我们提出了问题,然后为他说明了在新的 SharePoint 安装中使用当前基于 Domino 的应用程序的各种方法。

集成是当今企业环境中的实际问题,当前的企业环境有着多应用平台的特点,因此 Lotus Domino 和 SharePoint 可以轻松协作是毋庸置疑的。集成平台的方法众多;下面的列表给出了一个概况:

  • Web
    SharePoint 提供了基于 Web 的异构资源访问,而借助于 Web 请求,Lotus Domino 能够轻松处理 SharePoint 数据。因此,使用标准 HTTP 请求或 Web 服务(用于 Lotus Domino 7 中),即可在 SharePoint 环境中包含基于 Domino 的数据和应用程序。
  • XML
    XML 事实上已演化为用于移动数据的语言。Lotus Domino 通过其可用 Domino Web 代理公开的开发语言(LotusScript/Java)对 XML 提供了广泛的支持。还可以使用 ?ReadViewEntries URL 命令来读取 Domino 视图中的数据。
  • ADO.NET
    .NET Framework 访问数据源的标准方式是 ADO.NET。可以按照与其他任何数据源相同的方式来处理 Domino 数据,并通过 Open Database Connectivity(ODBC:IBM Lotus NotesSQL ODBC driver)或特定于 Domino 的 .NET 数据适配器访问这些数据。
  • Component Object Model(COM)
    尽管 .NET Framework 的目标之一是消除 COM 及其问题,但仍可以在 .NET 应用程序中使用 COM。Lotus Domino 通过 COM 公开其对象;使用这些对象可以在 SharePoint 环境中访问基于 Domino 的对象。

SharePoint 环境的一个要素就是 Web Part,它是将不同资源集合到一个界面中的工具。在深入研究 Lotus Domino 和 SharePoint 的集成之前,集中了解一下 Web Part 的基本概念将受益匪浅。




Web Part

Web Part 是用于控制一个 Web 页面的某些部分的软件组件。它们提供了在 SharePoint 内部包含资源的方法。此类资源的范围从简单的 Web 页面一直到调用 Web 服务并显示结果。

从编程角度看,Web Part 是基于 .NET Framework 和 Microsoft ASP.NET 的。Web Part 本质上是 ASP.NET 服务器控件。可以创建新的 Web Part 作为 ASP.NET 定制控件。但是,它们与标准 ASP.NET 控件之间存在一个关键区别,即:标准 ASP.NET 控件是在设计时添加到 Web 表单页的,而 Web Part 是由用户在运行时添加到 Web Part Pages 的 Web Part Zones 的。

SharePoint Web 界面可以划分为区(zone)或页(page)。在下一部分中将介绍使用 Web Part 将资源放置在这些区域中。SharePoint 产品和技术依靠 Web Part 来提供可配置、可扩展的用户界面。本文将使用标准的、开箱即用的 Web Part。

在深入研究如何在 SharePoint 中使用 Domino 资源的例子之前,先来快速浏览一下本文所附的示例 Domino 应用程序。图 1 展示了包含公司信息的 Domino 数据库的默认视图。示例应用程序包含一个带有公司名称、联系人姓名和电子邮件地址字段的表单。此外,它还包含了一个视图,用来显示按公司名称列出的数据。


图 1. 示例 Domino 数据库的默认视图
示例 Domino 数据库的默认视图

图 2 展示了数据库中的一个文档。


图 2. 在 Domino 数据库中打开的示例文档
在 Domino 数据库中打开的示例文档

从本文的 下载部分 可以下载示例数据库以供使用。





使用 Web

要将基于 Domino 的应用程序集成到 SharePoint 环境中,最简单的方法就是通过标准的 Web 或 HTTP 调用。使用 SharePoint Page Viewer Web Part 可以很轻松地实现上述集成。

可以使用 Page Viewer Web Part 在 Web Part Page 上显示 Web 页面、文件或文件夹。使用超级链接、文件路径或文件夹名称来链接内容。当然,需要有一个 SharePoint 站点来连接 Lotus Domino。图 3 展示了在 SharePoint 测试环境中所选择的 Create Page 选项。


图 3. 创建新的 SharePoint 站点
创建新的 SharePoint 站点

从列表(位于模板列表的底部,图中未显示)中选择 Web Part Page 模板。该模板允许您将 Web Part Page 的布局组织成区,并在这些区中安置一个或多个 Web Part。在本文中,我们将在单个区中链接 Domino 资源。

使用模板创建新的 Web Part Page,如图 4 所示。


图 4. 使用现有模板来创建新的 Web Part Page
使用现有模板来创建新的 Web Part Page

Web Part 的关键特性之一就是拖放式特征。可以选择一个 Web Part,将其拖至页面上的目标区域或目标区,然后放到该位置上。将 Web Part 放置在预期的区之后,即可对它进行配置。

如前所述,我们将使用 Page Viewer Web Part 通过 HTTP 请求来访问 Lotus Domino。单击 Next 链接来访问 Page Viewer Web Part 选项,如图 5 所示。


图 5. Page Viewer Web Part 选项
Page Viewer Web Part 选项

将 Page Viewer Web Part 拖放到预期的位置。图 6 所示将其放置在页面的较低位置上。


图 6. 创建新的 Page Viewer Web Part
创建新的 Page Viewer Web Part

若要访问 Page Viewer Web Part 的属性,单击 open the tool pane 链接。图 7 显示了结果。


图 7. 设置 Page Viewer Web Part 属性
设置 Page Viewer Web Part 属性

为了在 Page Viewer Web Part 中使用基于 Domino 的应用程序,选择 Web Page 作为要显示项的类型(Folder 和 File 是另外两个选项),然后在 Link 字段输入正确的 URL。工具窗格中的 Appearance、Layout 以及 Advanced 部分使您可以进一步对资源外观进行控制。

单击 OK 保存更改。图 8 显示了在页面内包含示例 Domino 应用程序的结果 —— 页面的其他区域(顶部横幅和左侧栏)是不可见的,因为它们是空的。现在完成了仅带有一些鼠标单击事件的 Lotus Domino/SharePoint 集成。


图 8. SharePoint 站点中包含 Domino 应用程序的结果
SharePoint 站点中包含 Domino 应用程序的结果

视图内容的显示是不受限制的。可以使用任何 Domino URL 来访问基于 Domino 的数据。图 9 展示了在 SharePoint 页面的标题栏中使用 Domino 图像资源的例子(使用了来自 developerWorks 站点的 IBM 徽标)。通过标准的 ?OpenImageResource URL 命令来访问图像资源,为使用本地 Domino 服务器的示例数据库使用以下语法:

http://localhost/SharePointTest.nsf/ibm-logo.gif?OpenImageResource.
图 9. 在 SharePoint 页面中使用 Domino 图像资源
在 SharePoint 页面中使用 Domino 图像资源

除了通过 URL 来引用图像之外,还可以使用 SharePoint Image Web Part,它允许您通过 URL 来引用图像并设置图像属性,如垂直和水平对齐、背景颜色等。使用 Domino URL 命令的要点在于可通过 Web 地址进行访问的任何资源都能够用在 SharePoint 安装中。

也可以通过 URL 与 Lotus Domino 进行交互,使用 Domino 代理来显示数据。这种方法使您能够利用 Domino 编程环境在展示之前按需处理数据。清单 1 中简单的 LotusScript 代理显示了来自示例应用程序的特定视图中各文档的公司名称。


清单 1. 用于显示视图内容的 LotusScript 代理
				Sub InitializeDim s As New NotesSessionDim db As NotesDatabaseDim vw As NotesViewDim doc As NotesDocumentSet db = s.CurrentDatabaseIf Not (db Is Nothing) Then	Set vw = db.GetView("Companies")	Set doc = vw.GetFirstDocument()	While Not (doc Is Nothing)	Print doc.CompanyName(0)	Print "<br>"	Set doc = vw.GetNextDocument(doc)	WendEnd If	Delete doc	Delete vw	Delete db	Delete sEnd Sub

该脚本访问数据库的 Companies 视图,并使用 Print 语句来显示视图中各文档 CompanyName 字段的内容。使用带有 HTTP 请求的 Lotus Domino 可以扩展为使用两个平台的 XML 功能。




使用 XML

XML 是 Lotus Domino 的一部分,就像它也是 .NET Framework 的一部分一样。二者都包括解析器和广泛的 XML 支持,简化了平台之间的数据交换。要访问来自 Lotus Domino 的 XML,最容易的方法之一是利用 Lotus Domino 在视图中的固有支持,使用 ?ReadViewEntries URL 命令。清单 2 展示了为示例数据库的 Companies 视图生成的 XML。


清单 2. 使用 ?ReadViewEntries 命令为示例数据库生成的 XML
				<?xml version="1.0" encoding="UTF-8" ?> 	<viewentries toplevelentries="2">		<viewentry position="1" unid="62AB3655123C7D6E85257228001484AF"			noteid="8F6" siblings="2">				<entrydata columnnumber="0" name="CompanyName">					<text>Baseline, Inc.</text> 				</entrydata>				<entrydata columnnumber="1" name="CompanyContact">					<text>Tony Patton</text> 				</entrydata>				<entrydata columnnumber="2" name="CompanyEmail">					<text>aspatton@bellsouth.net</text> 				</entrydata>		</viewentry>		<viewentry position="2" unid="90B3859793C60C2385257228001479BF" 			noteid="8FA" siblings="2">				<entrydata columnnumber="0" name="CompanyName">					<text>ACME Products</text> 				</entrydata>				<entrydata columnnumber="1" name="CompanyContact">					<text>Joe Smith</text> 				</entrydata>				<entrydata columnnumber="2" name="CompanyEmail">					<text>jsmith@acme.com</text> 				</entrydata>		</viewentry>	</viewentries>

您可将 SharePoint 页面中的 XML 与 XML Web Part 相集成。可以选择 XML Web Part 并将其拖放到页面的所需位置上。图 10 展示了添加 XML Web Part 并单击 open the tool pane 链接对 XML 进行配置之后的 SharePoint 页面。


图 10. 向页面添加 XML Web Part
向页面添加 XML Web Part

图 10 显示了用于 XML 的选项。单击 XML Editor 允许直接键入要显示的 XML;而且可以使用 XSL Editor 来输入将应用于 XML 的任何可扩展样式表语言(Extensible Stylesheet Language,XSL)。另外,可以相应字段中输入 XML 和/或 XSL 的路径。为了进行演示,将清单中 2 的 XML 连同 XSL 直接输入到 SharePoint 中。

单击 XSL Editor 按钮并输入清单 3 中的 XSL 来格式化由 Domino 生成的 XML(用于示例数据库视图的)。该 XSL 在 HTML 表中显示视图内容,其中第一列是公司名称,第二列是电子邮件地址。


清单 3. 在 HTML 表中格式化 Domino 视图内容的 XSL
				<?xml version="1.0" encoding="ISO-8859-1"?><xsl:stylesheet version="1.0"xmlns:xsl="http://www.w3.org/1999/XSL/Transform"><xsl:template match="/">	<html><body>	<h2>Companies</h2>		<table border="1">			<tr bgcolor="#9acd32">				<th>Company</th>				<th>Email</th>			</tr>			<xsl:for-each select="viewentries/viewentry">			<tr>				<td><xsl:value-of select="entrydata				[@columnnumber=1]/text"/></td>				<td><xsl:value-of select="entrydata				[@columnnumber=2]/text"/></td>			</tr>		</xsl:for-each>		</table></body>	</html></xsl:template></xsl:stylesheet>

图 11 展示了位于页面靠上部分的 XML Web Part 中所显示的数据。


图 11. 使用 XML 格式化并在 XML Web Part 中显示的 Domino 视图
使用 XML 格式化并在 XML Web Part 中显示的 Domino 视图

除了由 Lotus Domino 生成标准的 XML 之外,还可以使用 Domino 代理生成 XML。使用与清单 1 相同的代码,代理可以生成 XML 格式的视图内容。还可以使用 Microsoft Visual Studio .NET 开发环境来开发自己的 Web Part。

开发自己的页面

尽管 XML 和 Lotus Domino 可以解决大部分问题,但在某些情况下,可能需要开发自己的 ASP.NET 页面来展示 Domino 数据。利用 Web 服务调用、COM、ODBC 或本地数据提供程序(例如 Propulsion N2N Lotus Notes/Domino data driver for .NET),这些页面可以访问 Lotus Domino。这种方法使您可以使用完整的 ASP.NET 功能以及 Lotus Domino 后端来构建应用程序。关于 COM 的使用,有一点要注意:SharePoint 以及一些 Lotus Domino 实例必须安装在同一台机器上。




开发自己的 Web Part

开发您自己的 Web Part 时,除了要熟悉 SharePoint 环境之外,还需要具备 .NET Framework 和 ASP.NET 方面的知识。Web Part 是标准的 ASP.NET 定制控件。Microsoft 提供了模板,帮助您开始进行定制开发。下载 Microsoft 站点提供的模板安装包,您将看到需要安装 C# 或 VB.NET 示例(或安装两者)的提示。图 12 展示了安装后 Visual Studio .NET 中可以使用的 Web Part Library 项目选项。


图 12. 安装后 Visual Studio .NET 中可以使用的 Web Part Library 选项
图 12. 安装后 Visual Studio .NET 中可以使用的 Web Part Library 选项

创建定制 Web Part 的具体细节不在本文所讨论的范围之内。隐藏在 Web Part 背后的代码可以使用所有 .NET 功能,因此可以使用任何必要的方法(ADO.NET、Web 服务等)与 Lotus Domino 进行交互。

重用,不要替换

对开放标准(例如 Web 服务和 XML)的有力支持使得集成不同产品(如 Microsoft SharePoint 和 IBM Lotus Domino)变得轻而易举。SharePoint 平台通过一个 Web 界面来交付各种资源。可以方便地使用标准的或定制的 SharePoint Web Part 以及其他途径来包含基于 Domino 的应用程序和数据。利用已有的 Domino 应用程序,使之与 SharePoint 环境在同一家企业中和平共存。





下载

描述名字大小下载方法
示例数据库SharepointTest.nsf448 KBHTTP
关于下载方法的信息


参考资料

学习

获得产品和技术

讨论


关于作者

Tony Patton 是居住在美国肯塔基州路易斯维尔的一名顾问。他的工作涉及多种技术,包括 Lotus Notes/Domino、Java 技术和 Microsoft .NET。他写了两本关于 Lotus Notes/Domino 开发的书:Practical LotusScriptDomino Development with Java,他还负责撰写 CNet.com 关于 .NETWeb 开发 技术的每周专栏。您可以通过 aspatton@bellsouth.net 联系 Tony。

相关文章 热门文章
  • 实现微软AD与Domino OA系统的互连互用
  • IBM Lotus Domino iCalendar邮件地址解析栈溢出漏洞
  • 现有 IBM Lotus Domino/Notes 邮件模板简介
  • 在 Lotus Notes 中设置邮件定时发送的方法及代理功能介绍
  • IBM Lotus Domino 8.5 服务器管理入门手册
  • IBM Lotus Domino LDAP请求远程堆溢出漏洞
  • IBM Lotus Domino readme.nsf页面远程跨站脚本漏洞
  • IBM Lotus Notes远程栈溢出漏洞
  • 深信服新推出IBM LOTUS网络加速方案
  • 基于Lotus Domino的OA系统中安全机制的研究
  • Lotus Domino HTTP server 漏洞
  • Lotus Domino 8.5 ID Vault 新功能介绍及体验
  • Domino管理员29个问题
  • Lotus Domino/Notes如何有效防止垃圾邮件
  • 配置Domino服务器
  • Lotus Notes常见问题答疑
  • Lotus Notes安装和使用的常见问题
  • Lotus Notes 的最终用户最需知道的十件事
  • 如何提高Domino服务器性能
  • LOTUS NOTES .INI文件参数设置秘籍
  • Domino 做Internet企业邮局的配置
  • Domino SMTP邮件服务器设置实例
  • 基于Linux平台的Domino Server安装与配置
  • 如何配制Domino for IIS?
  • 自由广告区
     
    最新软件下载
  • SharePoint Server 2010 部署文档
  • Exchange 2010 RTM升级至SP1 教程
  • Exchange 2010 OWA下RBAC实现的组功能...
  • Lync Server 2010 Standard Edition 标..
  • Lync Server 2010 Enterprise Edition...
  • Forefront Endpoint Protection 2010 ...
  • Lync Server 2010 Edge 服务器部署文档
  • 《Exchange 2003专家指南》
  • Mastering Hyper-V Deployment
  • Windows Server 2008 R2 Hyper-V
  • Microsoft Lync Server 2010 Unleashed
  • Windows Server 2008 R2 Unleashed
  • 今日邮件技术文章
  • 腾讯,在创新中演绎互联网“进化论”
  • 华科人 张小龙 (中国第二代程序员 QQ...
  • 微软推出新功能 提高Hotmail密码安全性
  • 快压技巧分享:秒传邮件超大附件
  • 不容忽视的邮件营销数据分析过程中的算..
  • 国内手机邮箱的现状与未来发展——访尚..
  • 易观数据:2011Q2中国手机邮箱市场收入..
  • 穿越时空的爱恋 QQ邮箱音视频及贺卡邮件
  • Hotmail新功能:“我的朋友可能被黑了”
  • 入侵邻居网络发骚扰邮件 美国男子被重..
  • 网易邮箱莫子睿:《非你莫属》招聘多过..
  • 中国电信推广189邮箱绿色账单
  • 最新专题
  • 鸟哥的Linux私房菜之Mail服务器
  • Exchange Server 2010技术专题
  • Windows 7 技术专题
  • Sendmail 邮件系统配置
  • 组建Exchange 2003邮件系统
  • Windows Server 2008 专题
  • ORF 反垃圾邮件系统
  • Exchange Server 2007 专题
  • ISA Server 2006 教程专题
  • Windows Vista 技术专题
  • “黑莓”(BlackBerry)专题
  • Apache James 专题
  • 分类导航
    邮件新闻资讯:
    IT业界 | 邮件服务器 | 邮件趣闻 | 移动电邮
    电子邮箱 | 反垃圾邮件|邮件客户端|网络安全
    行业数据 | 邮件人物 | 网站公告 | 行业法规
    网络技术:
    邮件原理 | 网络协议 | 网络管理 | 传输介质
    线路接入 | 路由接口 | 邮件存储 | 华为3Com
    CISCO技术 | 网络与服务器硬件
    操作系统:
    Windows 9X | Linux&Uinx | Windows NT
    Windows Vista | FreeBSD | 其它操作系统
    邮件服务器:
    程序与开发 | Exchange | Qmail | Postfix
    Sendmail | MDaemon | Domino | Foxmail
    KerioMail | JavaMail | Winwebmail |James
    Merak&VisNetic | CMailServer | WinMail
    金笛邮件系统 | 其它 |
    反垃圾邮件:
    综述| 客户端反垃圾邮件|服务器端反垃圾邮件
    邮件客户端软件:
    Outlook | Foxmail | DreamMail| KooMail
    The bat | 雷鸟 | Eudora |Becky! |Pegasus
    IncrediMail |其它
    电子邮箱: 个人邮箱 | 企业邮箱 |Gmail
    移动电子邮件:服务器 | 客户端 | 技术前沿
    邮件网络安全:
    软件漏洞 | 安全知识 | 病毒公告 |防火墙
    攻防技术 | 病毒查杀| ISA | 数字签名
    邮件营销:
    Email营销 | 网络营销 | 营销技巧 |营销案例
    邮件人才:招聘 | 职场 | 培训 | 指南 | 职场
    解决方案:
    邮件系统|反垃圾邮件 |安全 |移动电邮 |招标
    产品评测:
    邮件系统 |反垃圾邮件 |邮箱 |安全 |客户端
    广告联系 | 合作联系 | 关于我们 | 联系我们 | 繁體中文
    版权所有:邮件技术资讯网©2003-2010 www.5dmail.net, All Rights Reserved
    www.5Dmail.net Web Team   粤ICP备05009143号