Как передать несколько объектов Java в Javascript (Rhino) - PullRequest
0 голосов
/ 03 октября 2018

Как мне структурировать объект ScriptableObject для достижения этого

functon onRequest(request, response, modules) {
  var requestBody = request.body; 
  response.body = request.body;
  response.body.hello = 'world';
  response.complete(200);
}

Где все, что находится внутри функции onRequest Javascript, будет выражением :

И request, response и modules являются объектами Java, передаваемыми во время выполнения Javascript для доступа.

        Context cx = Context.enter();
        ScriptableObject scope = cx.initStandardObjects();
        cx.evaluateString(scope,
                String.format("function onRequest() { %s }", expression),
                "<func>", 1, null);

1 Ответ

0 голосов
/ 03 октября 2018

Ответ на этот вопрос - передать Java-объект через:

ScriptableObject.putProperty(scope, "foo", fooObj);
...