技术开发 频道

集成IBM Lotus Domino数据和Microsoft SharePoint Services

使用 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 实例必须安装在同一台机器上。

0
相关文章