0

我有一个 Java bean,它代表了我的 xpage 背后的所有功能。当我保存 xpage 时,会调用一个方法,并将 xpage 数据源作为 DominoDocument 对象传入。我遇到的问题是设置作者和读者字段。我无法获取 Item 对象以使用“item.setAuthors(true);” 使用 DominoDocument 对象,所以我必须获取 Document 对象:

(dDoc = DominoDocument passed into the save method via SSJS call to it)

Document doc = dDoc.getDocument(true); 
Vector<String> editors = new Vector<String>();       
editors = getUniqueList(dDoc,editors,"AdditionalEditors") ;  
Item item = doc.replaceItemValue("Authors", editors);  
item.setAuthors(true) ; 
doc.save(); 

新文档的第一次保存似乎可以工作,但是随后的保存会创建当前文档的新副本;后端更改未传递到前端文档。是否有另一种方法可以使用 dominoDocument 对象设置作者/读者字段,或者在使用后端文档调用保存后用更改包装 DominoDocument。我确实尝试过 dDoc.restoreWrappedDocument() 但这不起作用。

4

1 回答 1

0

要获得作者和读者字段,您有 2 个选项:

  • 将它们添加到表单并为保存操作指定“ComputeWithForm”
  • 将代码添加到您设置字段的 querySave 事件。不要在那里保存文档(它是在保存文档之前运行的函数)。

在任何情况下,请确保不要在任何范围内保留对 dDoc 的引用

于 2013-03-25T15:54:46.670 回答