ScriptObjectMirror 成员到 JSON 字符串

ScriptObjectMirror member to JSON string

我有来自 jdk.nashorn.api.scripting 的 ScriptObjectMirror 对象。 我得到一个 JSON 节点使用:

Object clientDataNode = scriptObjectMirror.getMember("clientData");

如何将 clientDataNode 转换为 String 来获取这样的东西:

  "clientData": {
    "name": "John",
    "surname": "Smith",
    "age": 22
  }

您可以使用 x-stream api ,参见 http://x-stream.github.io/json-tutorial.html

最终我只是使用 javascript 方法

将 clientData 节点转换为字符串 属性
JSON.stringify(clientData)

使用 Nashorn 引擎 然后以这种方式获取它,因为它不再是成员:

String jsonClientData = (String) scriptObjectMirror.get("clientData");