保存新文档时,xspdocument似乎为null

时间:2013-08-13 19:55:00

标签: xpages

这很难解释,所以我感谢您阅读本文。

我有一个带有三个标签的xPages应用。每个选项卡都有自己的自定义控件。在第一个自定义控件上,我有以下代码:

<xp:this.data>
<xp:dominoDocument var="vendorApplication" formName="frmVendorApplication"
action="editDocument" computeWithForm="onsave">
<xp:this.documentId><![CDATA[#{javascript:( param.vendorAppNoteID || "");}]]>
</xp:this.documentId>
</xp:dominoDocument>
</xp:this.data>

在最后一个标签上,我有以下代码来保存文档

vendorApplication.save();
var vendorAppDocument = vendorApplication.getDocument();
//  a bunch of code that does vendorAppDocument.ReplaceItemValues( ..... )
vendorAppDocument.save();

我遇到的问题是当我尝试保存一个新文档时,我一直到vendorAppDocument.save()然后我得到一个关于它为null的错误。如果我正在编辑现有文档,那很好。

我怀疑这与在新文档中没有设置的vendorApplication(XSPDocument)有关。如何将vendorApplication设置为当前的XSPDocument?或者你看到其他东西丢失了吗?

2 个答案:

答案 0 :(得分:1)

确保使用getDocument(true)使后端文档与前端文档中所做的更改同步。请执行以下操作:

vendorApplication.save();
var vendorAppDocument = vendorApplication.getDocument(true);
//  a bunch of code that does vendorAppDocument.ReplaceItemValues( ..... )
vendorAppDocument.save();

答案 1 :(得分:0)

原来问题就像删除action =“editDocument”

一样简单
<xp:this.data>
<xp:dominoDocument var="vendorApplication" formName="frmVendorApplication"
action="editDocument" computeWithForm="onsave">