我尝试使用'计划任务'来安排脚本。在ML8。文档解释了这一点,但仅适用于xQuery。 现在我有一个我想安排的JavaScript文件。
日志文件中的错误:
2015-06-23 19:11:00.416 Notice: TaskServer: XDMP-NOEXECUTE: Document is not of executable mimetype. URI: /scheduled/cleanData.js
2015-06-23 19:11:00.416 Notice: TaskServer: in /scheduled/cleanData.js [1.0-ml]
我的剧本:
/* Scheduled script to delete old data */
var now = new Date();
var yearBack = now.setDate(now.getDate() - 65);
var date = new Date(yearBack);
var b = cts.jsonPropertyRangeQuery("Dtm", "<", date);
var c = fn.subsequence(cts.uris("", [], b), 1, 10);
while (true) {
var uri = c.next();
if (uri.done == true){
break;
}
xdmp.log(uri.value, "info"); // log for testing
}
答案 0 :(得分:3)
尝试使用* .sjs扩展名(服务器端JavaScript)。
* .js扩展名可用于静态JavaScript资源以返回客户端,而不是在服务器上执行。
希望有帮助,
答案 1 :(得分:2)
我相信ehennum为你找到了问题(扩展 - 这就是mime-type错误所抱怨的。
但是,在同一主题上,并非ML中的所有项目都与您对Serverside Javascript的预期完全相同。例如,使用sjs作为触发器的目标是(或最近)不起作用。所以对于这样的事情,也可以使用xdmp-invoke将sjs调用包装在xqy中。