尝试发送文档时出现意外的运行时错误

时间:2012-06-07 10:52:56

标签: xpages xpages-ssjs

我有新的Lotus Domino Server 8.5.3 FP1 UP1(Windows 2008 64位)。

我创建了一个从发送邮件的帮助中复制的xpages示例。

var doc:NotesDocument = database.createDocument();
doc.replaceItemValue("form", "Memo");
doc.replaceItemValue("sendTo", "daniel.recio@slug.es");
doc.replaceItemValue("subject", "hi there!");
doc.replaceItemValue("body", "content here");
doc.send();

但我有Unespected运行时错误

执行JavaScript动作表达式时出错 脚本解释器错误,line = 6,col = 5:[TypeError]发生异常调用方法 NotesDocument.send() null

▼堆栈跟踪 javax.faces.FacesException:执行JavaScript动作表达式时出错     com.sun.faces.lifecycle.InvokeApplicationPhase.execute(InvokeApplicationPhase.java:102)     com.sun.faces.lifecycle.LifecycleImpl.phase(LifecycleImpl.java:210)     com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:96)     com.ibm.xsp.controller.FacesControllerImpl.execute(FacesControllerImpl.java:250)

我已完全卸载此服务器,并重新安装时出现同样的错误。

在其他测试服务器上工作,但在这个服务器上,我的莲花设计师是8.5.2 + Ext Lib,现在是8.5.3 FP1 UP1。

你可以帮助我吗?

全部谢谢

5 个答案:

答案 0 :(得分:3)

错误可能是因为服务器无法实际发送消息。服务器端,当服务器无法路由消息时,会导致异常。确保您的服务器可以自己成功路由邮件,然后您的错误可能会消失。

答案 1 :(得分:1)

检查ACL并确保您(或匿名,如果您以匿名方式进行测试)有权创建文档。我的猜测是,这就是导致NotesDocument为空的原因。

另外,请查看位于Domino数据目录中的/domino/workspace/logs/error-log-0.xml文件,以获取有关错误的其他说明。

答案 2 :(得分:0)

我会删除第一行的类型转换并再次尝试。我之前看到的问题是演员阵容导致问题。所以,你的代码应该是这样的:

 var doc = database.createDocument();
 doc.replaceItemValue("form", "Memo");
 doc.replaceItemValue("sendTo", "daniel.recio@slug.es");
 doc.replaceItemValue("subject", "hi there!");
 doc.replaceItemValue("body", "content here");
 doc.send();

答案 3 :(得分:0)

我在我的应用程序中运行完全相同的代码,除了我使用appendItemValue而不是replaceItemValue,它工作正常。我也在8.5.3 FP1 UP1上。不确定内部会有什么区别,但这是值得尝试的。

答案 4 :(得分:0)

代码是否在您的本地计算机上工作(如果您在浏览器中打开本地副本)?

可能是服务器文档已损坏:尝试重新创建它。这为我的一位客户解决了同样的问题。另一个想法是在数据库中重新创建默认视图。

修改
你能检查一下Stacktrace吗?最后一个块可能包含更多信息。应该有一些像这样的行:

    lotus.domino.local.Document.Nsend(Native Method)
    lotus.domino.local.Document.send(Unknown Source)

请在这些行上面发布上面的