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
图 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 视图
除了由 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 实例必须安装在同一台机器上。