我有一个 Java 对象,我想将其转换为 json 对象并传递给 Nashorn javascript 引擎。谷歌搜索这个问题的答案是非常困难的!有人可以告诉我该怎么做吗?
我试过这个:
ObjectMapper mapper = new ObjectMapper();
String inputModelAsString = mapper.writeValueAsString(inputModel);
然后将字符串 json 传递给函数:
result = invocable.invokeFunction(PROGRAM_FUNCTION, moduleName, inputModelAsString);
但它是作为字符串传递的,而不是作为 json 传递的。
您可以通过以下方式从引擎转换 json
ScriptEngine engine = new ScriptEngineManager().getEngineByName("nashorn");
ScriptObjectMirror json = (ScriptObjectMirror) engine.eval("("+inputModelAsString+")");
然后你可以在代码中传递 json 对象
result = invocable.invokeFunction(PROGRAM_FUNCTION, moduleName, json);
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)