获取未保存文档的URL或文档ID

时间:2012-10-13 20:48:21

标签: xpages xpages-ssjs

在保存文档时,我正在运行正在执行.save()的SSJS,然后我希望将文档链接(URL)包含在通过使用context.getUrl发送的通知电子邮件的正文中( )。

这适用于已保存的文档,因为它在doc打开时在URL中具有doc ID,但不适用于新文档。有没有办法可以为没有身份证的新文件做到这一点?

2 个答案:

答案 0 :(得分:2)

您必须自己构建URL,因为(您已经知道)不能使用context.getUrl()方法。

所以在你的.save()之后你可以做以下的事情:

var docUrl = context.getUrl().toString().split(view.getPageName())[0] + "/" + database.getFilePath() + view.getPageName() + "?action=openDocument&documentId=" + document.getNoteID();

context.getUrl().toString().split(view.getPageName())[0]部分应根据David Leedys xpagescheatsheet.com URL test为您提供主机名和数据库文件路径。然后我添加当前的XPage名称和openDocument和docid参数。

答案 1 :(得分:1)

另一种可能性:如果您在文档后面有一个表单并且“打开XPages”属性,则可以使用http://server/database.nsf/0/universalid语法。如果文档中有唯一标识符,您还可以使用按该标识符排序的视图并使用http://server/database.nsf/sortedview/sortkey。使用排序视图,您可以在保存之前预测URL。