XPages控制器类

时间:2016-03-08 13:53:23

标签: java xpages xpages-extlib

目前我正在重新设计一个更大的应用程序。因此,在后端我只想使用java而不是javascript,并且由于许多其他原因(更清晰的代码,关注点分离等),我使用的是XPages Scaffolding项目Jesse Gallagher(感谢他的这项工作)。

我非常喜欢这个项目的controller classes,但我有一个问题 这种架构方法:

enter image description here

控制器类与xpage(.xsp)具有一对一的连接。在BasicDocumentController类中,以下方法protected DominoDocument getDoc()负责获取相应的数据源(DominoDocument)但是 - 这是我的挑战 - 我在一个xpage中有多个数据源。

可能的方法:

a)覆盖getDoc()中的MyDocumentController方法(仅对一个数据源有意义)

b)两个控制器类MyDocumentControllerA MyDocumentControllerB

c)等。

处理此要求的适当方法是什么?

提前感谢任何暗示!

1 个答案:

答案 0 :(得分:5)

在这种情况下,您可以放弃BasicDocumentController并使用BasicXPageController。前者主要用于表格式XPage的简单情况,但除了有一些预先制作的方法存根可用于连接文档数据源之外,没有什么太神奇了。使用多个文档时,您可以创建private DominoDocument getDocA() { return (DominoDocument)ExtLibUtil.resolveVariable("docA"); }和另一个等效文档。