XPages控制器类

Geo*_*fer 4 java xpages xpages-extlib

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

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

在此输入图像描述

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

可能的方法:

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

b)两个控制器类MyDocumentControllerA MyDocumentControllerB

c)等

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

提前感谢任何暗示!

Jes*_*her 5

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

  • 这绝对取决于你想要如何处理它.如果他们将通过单独的行动在逻辑上保存,那么,有多种方法将是要走的路.但是,如果将它们保存在一起,那么来自`BasicXPageController`的现有保存方法将以库存"保存"操作按钮的方式保存所有数据源. (2认同)