如果其中的数据不会从调用 xsp 中保存,xpages xp:include 标记有什么意义?

What's the point of the xpages xp:include tags if the data with in it won't save from the calling xsp?

我开发的 ui 应用程序有几个表单,每个表单都有一个用于 保存、保存和关闭、编辑、取消的通用自定义控件, 删除 按钮。这些表单带有几个选项卡式面板,这些面板是作为单独的 xpages 创建的。这些页面由 main xpage 使用 include xp 标签调用。

<xp:include pageName="sub_tab_6.xsp" id=include6"></xp:include>

此技术在显示数据和允许数据输入方面做得很好,但是即使单击“保存”按钮,任何数据输入或编辑都会丢失。主调用 xpage 上的那些字段被保存,但是包含的 xpages 上的那些数据(以及放置在 Custom Controls 中的表单部件上的那些数据,我也试过)没有被保存。

为了好玩,我尝试在子页面上放置一个单独的保存按钮,这导致一些字段进入读取模式并开始出现保存冲突,当然,这会造成严重破坏。

没有将我的子页面合并到主页面中,有没有更好的表单设计方法?

(Windows 客户端:版本 9.0.1 FP9(服务器:FP10,Longhorn64 6.1)

如果您使用自定义控件或包含页面,请不要在其上定义您的数据源,而是使用您的 Xpage 的数据源名称。例如:如果您在 xpage 上的数据源称为 document1;您可以在自定义控件中使用 document1 或包含,即使它没有在此处定义。

如果数据源名称在您使用包含或自定义控件的所有 Xpage 上都相同,这将正常工作。如果您想要一种更动态的方法,您可以将数据源作为自定义控件的 属性 传递(并通过 compositeData 访问它)。有关此技术的更多详细信息,请参见此处 .