sessionAsSignerWithFullAccess 异常失败

erratic failure of sessionAsSignerWithFullAccess

下面的代码是我在 XPage 上的操作按钮中的一些测试代码。我需要在代码 WFSUtils.sysOut 中使用 FullAccess 获取当前数据库的句柄,只需将打印的消息格式化为服务器控制台。定期在 catch 中显示错误信息 returns 2015-01-09 12:49:11 下午 HTTP JVM:WFS ~~~ 更新演示中出错 'sessionAsSignerWithFullAccess' 未找到

我是 XPage 的签名者,数据库是由服务器 ID 签名的。有时它 运行 过得很好,其他时候它会失败并显示上面的消息。如果我关闭一切然后重新启动它通常会 运行 但随后开始失败。这是非常随机和不可预测的。

debug = true;
try{

    if (debug) WFSUtils.sysOut("Starting YYY New SetupDemo");
    var serverName = database.getServer();
    var repID = database.getReplicaID();
    thisDB = sessionAsSignerWithFullAccess.getDatabase("","");
    thisDB.openByReplicaID(serverName,repID); 
    if (debug) WFSUtils.sysOut( "SetupDemo Success" + thisDB.getTitle());
}catch(e){
    WFSUtils.sysOut("Error " + e.toString())
}finally{
    try{
        WFSUtils.recycleObjects([]);
        if (debug) WFSUtils.sysOut("SetupDemo Recycle Success");
    }catch(e){
        if (debug) WFSUtils.sysOut("SetupDemo recycle Failed");
    }

}

出于某种原因,当 运行 时,所有 XPage 元素都由相同的 ID 签名很重要。如果不是,sessionAsSignersessionAsSignerWithFullAccess 会像您描述的那样变得不稳定 - 这可能就是原因。