In my JavaScript I have a JSON Object which I use as a parameter of a Java object. On the Java side I receive a jdk.nashorn.internal.scripts.JO4
but only the jdk.nashorn.internal.scripts.JO
class exits. How can I access this JSON Object?
var test = {
"id": 10,
"Hello": "World",
"test": {
"Lorem" : "Ipsum",
"java" : true
}
}
m.call(test);
In my JavaScript I have a JSON Object which I use as a parameter of a Java object. On the Java side I receive a jdk.nashorn.internal.scripts.JO4
but only the jdk.nashorn.internal.scripts.JO
class exits. How can I access this JSON Object?
var test = {
"id": 10,
"Hello": "World",
"test": {
"Lorem" : "Ipsum",
"java" : true
}
}
m.call(test);
Share
Improve this question
edited Jan 5, 2021 at 21:12
Jason Aller
3,65228 gold badges41 silver badges39 bronze badges
asked Jul 12, 2014 at 21:03
th3_cr0wl3rth3_cr0wl3r
1131 silver badge7 bronze badges
2 Answers
Reset to default 5Try using ScriptObjectMirror:
public void call(ScriptObjectMirror obj) {
System.out.println(obj.get("Hello"));
}
See this article for more examples: http://winterbe./posts/2014/04/05/java8-nashorn-tutorial/
With some google searches i found a solution: On the Java side, I must use a java.util.Map
. So I can parse this Map to an org.json.simple.JSONObject
public void call(Map map){
JSONObject json = new JSONObject(map); // convert map to an json Object
}