我计划使用 XPages 进行设计(加上 Lotus Notes Elements)来制作一个 Web 应用程序,但我不会将数据存储在 Lotus Notes 中,而是将数据存储在 RDBMS(特别是 Oracle 数据库)中。如您所见,我想在设计和数据之间创建一个清晰的分离。有没有办法我可以做到这一点?我的意思是,有没有办法可以将 Oracle 用作数据源并将 XPages/Lotus Notes 仅用于 UI?非常感谢!
4 回答
实际上,自 2011 年 7 月以来,Xpages 中就已经对 RDBMS/JDBC 连接提供了原生支持。查看 OpenNTF 上的扩展库 (http://extlib.openntf.org/) 并阅读宣布该功能的博文:http:// www.openntf.org/blogs/openntf.nsf/d6plinks/NHEF-8JYMXE。
IBM 尚未正式支持它(不是升级包 1 的一部分 - http://www-01.ibm.com/software/lotus/notesanddomino/nd85-UpgradePack853-1.html),但会有支持在将来。
简短的回答似乎是“是但不是”。
XPages 与 JDBC 兼容,因此您可以连接到任何东西,包括 Oracle。问题是,您可能必须自己编写代码。显然,有计划开源一个基于 JDBC 的关系数据库 XPages DataSource,但没有这样的活动。 找到更多
XPages101.net可能是一个在 Xpages 上剪牙的好网站。他们有60 节课程可供您订阅。强烈推荐他们。你可能对第 55 课特别感兴趣。
免责声明:我不以任何方式隶属于 XPages101.net。
XPages 环境对关系数据源没有任何特别的支持,但是根据您的组织对使用最新和 beta 软件的谨慎程度以及您愿意编写多少支持代码,有两种可行的选择。
对于前一种情况,XPages 扩展库 (http://extlib.openntf.org/) 正在为 Domino 的 8.5.3 版本添加关系数据库支持,该版本计划于下月初发布。我不在 8.5.3 测试版中,所以我还没有看到这个,但是他们页面上的视频看起来很有希望,而且扩展库总体上是高质量的。因此,如果您愿意在 8.5.3 发布时部署它并使用扩展库,它可能会做您想做的事。
如果您不会立即升级或不想部署库,您可以使用 JDBC 驱动程序编写自己的代码;这里有一个这种技术的例子:http ://www-10.lotus.com/ldd/ddwiki.nsf/dx/xpage_integration_rdb.htm 。例如,虽然您不能只将 RecordSet 传递给 XPage 上的 Repeat 控件,但如果您愿意编写自己的 ORM,则可以使您的对象使用 Java-Bean 样式命名实现 List 接口,这会让您在标准控件中使用它们并编写表达式语言,如“#{someRecord.someField}”。