Java Nashorn построить объект массива JSON в Java не может найти путь - PullRequest
1 голос
/ 20 марта 2019

Я пытаюсь создать массив java json, не могу найти способ создать их с помощью Nashorn, я могу создавать простые объекты ...

private void createJsonObject() {
        try {

            final Map<String, Object> newMap = new HashMap<>();
            newMap.put("foo",1);
            newMap.put("bar", true);

            ScriptObjectMirror json = (ScriptObjectMirror) this.engine.eval("JSON");
            json.putAll(newMap);

            this.engine.put("jsonObject", json);
            String result = (String) this.engine.eval("JSON.stringify(jsonObject)");
            System.out.println(result);
        } catch (ScriptException e) {
            e.printStackTrace();
        }

    }

Результат: {"bar": true, "foo": 1}

Здесь я пытаюсь создать массив, но я получаю пустой json

 private void createJsonObject() {
        try {


            List<String> returnList = new ArrayList<>();
            returnList.add("x");
            returnList.add("y");
            ScriptObjectMirror json = (ScriptObjectMirror) this.engine.eval("JSON");         
            json.put("test",returnList);
            this.engine.put("jsonObject", json);
            String result = (String) this.engine.eval("JSON.stringify(jsonObject)");
            System.out.println(result);
        } catch (ScriptException e) {
            e.printStackTrace();
        }

    }

Результат: {}

Конечной целью является создание массива объектов впамять с использованием инструментов Java без использования зависимостей

...