如何通过自定义属性将NotesDocument / NotesViewEntry集合传递到自定义控件?

时间:2012-03-22 11:38:15

标签: xpages

我希望有一个自定义控件可以处理我决定传递给它的任何文档。这样做的最佳方式是什么?

假设您无法直接传递集合...是否应创建函数以将集合转换为UNID的hashMap或向量?

还有其他办法吗?

由于

2 个答案:

答案 0 :(得分:7)

如果您改为传递数据源,则会将循环安全对象传输到自定义控件。

例如,如果XPage定义了文档数据源,并且您将对该数据源的引用传递给CC,则传输的Java对象是DominoDocument,它是围绕“后端”的循环安全包装器。文献。直接传递文档可能会导致链接的C对象在请求之间变为孤立。

类似地,将引用传递给视图数据源为CC提供了一个DominoView,它本质上是一个围绕后端ViewEntryCollection的循环安全包装器。

对于大多数用例,您可以直接传递后端对象,但传递数据源会更安全。

答案 1 :(得分:5)

将NotesDocument和/或NotesDocumentCollection对象传递给自定义控件可以正常工作。只需将Custom Control的属性类型设置为java.lang.Object即可。通过这种方式,您可以将任何对象传输到自定义控件。