- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
03-30-2016 06:39 AM
I have the following code:
<g:evaluate>
var someData = [
{"PropA":"Value1", "PropB":"Value2"},
{"PropA":"Value3", "PropB":"Value4"}
];
</g:evaluate>
<j:forEach items="${someData}" var="jvar_data">
${jvar_data.PropA} ${jvar_data.PropB}
</j:forEach>
The evaluate actually builds the data from other sources, but the result is the same - an array of objects that I wish to display in the page.
Unfortunately the UI Page renders nothing, and if I look in the logs I see the following:
WARNING *** WARNING *** ScopedRhinoObjectWrapper: not a wrappable type: org.mozilla.javascript.NativeObject
Any ideas what's going wrong here?
Solved! Go to Solution.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
03-30-2016 07:58 AM
Please try this - have tested in my local and its working (add <br/> for clarity of output)
<?xml version="1.0" encoding="utf-8" ?>
<j:jelly trim="false" xmlns:j="jelly:core" xmlns:g="glide" xmlns:j2="null" xmlns:g2="null">
<g:evaluate var="jvar_json" jelly="true" object="true">
var someData = [
{"PropA":"Value1", "PropB":"Value2"},
{"PropA":"Value3", "PropB":"Value4"}
];
someData;
</g:evaluate>
<j:forEach items="${jvar_json}" var="jvar_data">
<g:evaluate var="jvar_propA" jelly="true" expression="var propA = jelly.jvar_data.PropA; propA;"/>
<g:evaluate var="jvar_propB" jelly="true" expression="var propB = jelly.jvar_data.PropB; propB;"/>
${jvar_propA} ${jvar_propB}
<br/>
</j:forEach>
</j:jelly>
Hopefully it helps

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
03-30-2016 07:48 AM
Hi Mark,
This is JSON notation.
Try using this below code:
<g:evaluate>
var someData = [
{"PropA":"Value1", "PropB":"Value2"},
{"PropA":"Value3", "PropB":"Value4"}
];
</g:evaluate>
<j:forEach items="${someData}">
${someData[0].PropA} ${someData[0].PropB}
</j:forEach>
Thanks and let me know if any concerns.
Hit Like/Helpful, feedback is appreciated.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
03-30-2016 07:58 AM
Please try this - have tested in my local and its working (add <br/> for clarity of output)
<?xml version="1.0" encoding="utf-8" ?>
<j:jelly trim="false" xmlns:j="jelly:core" xmlns:g="glide" xmlns:j2="null" xmlns:g2="null">
<g:evaluate var="jvar_json" jelly="true" object="true">
var someData = [
{"PropA":"Value1", "PropB":"Value2"},
{"PropA":"Value3", "PropB":"Value4"}
];
someData;
</g:evaluate>
<j:forEach items="${jvar_json}" var="jvar_data">
<g:evaluate var="jvar_propA" jelly="true" expression="var propA = jelly.jvar_data.PropA; propA;"/>
<g:evaluate var="jvar_propB" jelly="true" expression="var propB = jelly.jvar_data.PropB; propB;"/>
${jvar_propA} ${jvar_propB}
<br/>
</j:forEach>
</j:jelly>
Hopefully it helps
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
03-30-2016 08:03 AM
Thanks. That's fixed it. It's the nested evaluate tags that seem to be needed within the forEach tag.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
06-20-2016 10:19 AM
Hi there,
I've tried Srikanth Gunuru's solution and it works fine in a Global application. However when I tried it in a scoped application, it's returning null. Has anyone tried it in a scoped application?
Thanks