我在xp中添加了一个删除链接:重复删除该行的文档,使用" rowVar"重复访问thye文档条目的变量。
以下是重复中删除链接的代码:
<xp:link escape="true" id="link2"
style="width:50.0px;display:inline-block" text="Delete">
<xp:eventHandler event="onclick" submit="true"
refreshMode="partial" refreshId="panelChemLog" immediate="true">
<xp:this.action><![CDATA[#{javascript:
var deleteUNID = rowVar.getUniversalID();
println(deleteUNID);
var doc:NotesDocument = database.getDocumentByUNID(deleteUNID);
println(doc.getCreated() );
doc.remove(true);
}]]></xp:this.action>
</xp:eventHandler>
</xp:link>
我包含了println语句,我可以在我的日志中看到deleteUNID和doc对象已设置,但代码会在最终的doc.remove(true)语句中抛出此异常:
Script interpreter error, line=5, col=5: [TypeError] Exception occurred calling method NotesDocument.remove(boolean) null
如何编码删除链接以删除重复行中的文档?
答案 0 :(得分:3)
我几次见过这个错误。刚测试确定。如果用户没有删除权限,则会抛出这样一个毫无意义的错误。
如果查看Java堆栈跟踪,可以通过跟踪底部的以下内容进行确认。
NotesException:Notes错误:您无权执行该操作 操作
您可以在代码中使用database.queryAccessPrivileges(...)
方法。