SSJS相当于LotusScript的LSI_Info

时间:2013-02-21 13:41:39

标签: xpages xpages-ssjs

我的大部分代码都是使用try / catch和OpenLog处理错误(已修改为处理SSJS异常)。不幸的是,SSJS中的例外情况给出了hard to read stack trace

所以我需要传递更多信息 - 至少是事件/方法,其中是错误处理程序。我可以简单地将“方法XY”参数放到每个OpenLog.logError调用中,但是这使得每个处理程序都是唯一的并且容易出错(程序员喜欢copypasta)。让LSI_Info等价,使错误处理程序保持不变(这样你就可以在Eclipse中将它们定义为模板)会很好。

是否有任何调用,它返回“我在哪里”SSJS代码(包括库)的方法/事件信息?

1 个答案:

答案 0 :(得分:6)

查看我的调试工具栏的消息类中的代码(在GitHub上找到here)。我包含了一种'漂亮打印'错误的方法,还捕获了一个com.ibm.jscript.InterpretException。我用它将格式化的错误消息发送到 OpenLog 事件文档。它(有点)模仿你在默认的XPage错误页面中获得的信息。

要查看格式化错误的样子,请转到我的工具栏的demo page,然后点击“测试1”或“测试2”按钮。这将抛出自定义错误表单捕获的SSJS错误。该表单将消息写入工具栏,该工具栏配置为还将错误消息存储在单独的OpenLog数据库中。

(可以在OpenNTF上找到工具栏下载here