运行 后端 Marklogic 服务器中的自定义 JavaScript 任务
Running a custom JavaScript task in the backend Marklogic server
我正在尝试通过 运行nng 一个 gradle 任务从后端服务器获取 datahub-staging 中的所有集合列表。
我尝试编写以下任务:
cat myCustomJs.task
task myJavascriptTask(type: com.marklogic.gradle.task.ServerEvalTask) {
javascript = "cts.collections()"
}
但是,我不确定如何创建或 运行 任务以便我可以获得 cts.collections() 的结果。非常感谢任何线索。
我的 build.gradle 文件中设置了几个这样的任务。这是您正在寻找的模式:
task getCollections(type: com.marklogic.gradle.task.MarkLogicTask) {
doLast {
def client = getAppConfig().newDatabaseClient()
String request = """
cts.collections().toArray().join("; ")
""";
try {
String result
result = client.newServerEval().javascript(request).evalAs(String.class);
if (result != null) {
println result
}
} finally {
client.release()
}
}
}
我正在尝试通过 运行nng 一个 gradle 任务从后端服务器获取 datahub-staging 中的所有集合列表。
我尝试编写以下任务:
cat myCustomJs.task
task myJavascriptTask(type: com.marklogic.gradle.task.ServerEvalTask) {
javascript = "cts.collections()"
}
但是,我不确定如何创建或 运行 任务以便我可以获得 cts.collections() 的结果。非常感谢任何线索。
我的 build.gradle 文件中设置了几个这样的任务。这是您正在寻找的模式:
task getCollections(type: com.marklogic.gradle.task.MarkLogicTask) {
doLast {
def client = getAppConfig().newDatabaseClient()
String request = """
cts.collections().toArray().join("; ")
""";
try {
String result
result = client.newServerEval().javascript(request).evalAs(String.class);
if (result != null) {
println result
}
} finally {
client.release()
}
}
}