Hi Thomas, I instantiate the jsonbuilder as follows in the example yet returned to previous error that was not allow adding elements in my "json" method. "Add ()". I have also realized by placing the method within an array as criuado test ("data.projetos [i]. Id.add ()"). {{groovy}}def hql0 = ", BaseObject as obj where doc.fullName = obj.name and obj.className = 'E-nova.E-novaClass'";def listProjetos = services.query.hql(hql0).execute();def i = 0;def data = new groovy.json.JsonBuilder();data = ["totalprojetos": listProjetos.size(),"projetos": [ id: "", tag: "", label: "", size: "", color: "", x: "", y : "" ],"edges":[ id: "", source: "", target: "" ]]; for(item in listProjetos){ def hql = "select distinct list from BaseObject as obj, DBStringListProperty as prop join prop.list list where obj.className='XWiki.TagClass' and obj.id=prop.id.id and prop.id.name='tags' and obj.name ='$item' ";def tag = services.query.hql(hql).execute(); i = i + 1; data.projetos.id.add()=1; data.projetos.tag.add()="tags"; data.projetos.label.add()="Label do projeto"; data.projetos.size.add()=5; data.projetos.color.add()="#696969"; data.projetos.x.add()=1; data.projetos.y.add()= 1;} def json = new groovy.json.JsonBuilder(data)println json.toPrettyString(){{/groovy}} Atenciosamente, Eduardo Abritta e-mail: [email protected] | cel: (32)8472-9631
From: [email protected] To: [email protected] Date: Mon, 30 Jun 2014 15:23:37 -0300 Subject: Re: [xwiki-users] Implement Jsontool.serialize in groovy
I'm trying to implement a function that told me but I can not add the data online, I can only add one. How do I do that? {{groovy}}def hql0 = ", BaseObject as obj where doc.fullName = obj.name and obj.className = 'E-nova.E-novaClass'";def listProjetos = services.query.hql(hql0).execute();def i = 0;def data = new groovy.json.JsonBuilder();data = ["totalprojetos": listProjetos.size(),"projetos": [ id: "", tag: "", label: "", size: "", color: "", x: "", y : "" ],"edges":[ id: "", source: "", target: "" ]]; for(item in listProjetos){ def hql = "select distinct list from BaseObject as obj, DBStringListProperty as prop join prop.list list where obj.className='XWiki.TagClass' and obj.id=prop.id.id and prop.id.name='tags' and obj.name ='$item' ";def tag = services.query.hql(hql).execute(); i = i + 1; data.projetos.id=1; data.projetos.tag="tags"; data.projetos.label="Label do projeto"; data.projetos.size=5; data.projetos.color="#696969"; data.projetos.x=1; data.projetos.y= 1;} def json = new groovy.json.JsonBuilder(data)println json.toPrettyString(){{/groovy}} Atenciosamente, Eduardo Abritta e-mail: [email protected] | cel: (32)8472-9631
Date: Fri, 27 Jun 2014 11:51:47 +0200 From: [email protected] To: [email protected] Subject: Re: [xwiki-users] Implement Jsontool.serialize in groovy
You should probably use JsonBuilder which is the standard tool to manipulate JSON in Groovy.
On Fri, Jun 27, 2014 at 10:33 AM, Clemens Klein-Robbenhaar <[email protected]> wrote:
The velocity tools are not automatically created for groovy scripts The closest you can get is to create them manually in your script, like:
def jsontool = new org.xwiki.velocity.tools.JSONTool()
I feel there should be a better way to do that, but it works this way. (it is likely that using groovy.json.JsonBuilder() works, too, but I have not tried)
Clemens
On 06/24/2014 09:21 PM, Eduardo Abritta wrote:
Hello Sirs, I need to implement the function "jsontool.serialize" in the code below, groovy, and I do not understand the error that is accusing, can help me solve this? {{groovy}}def hql0 = ", BaseObject as obj where doc.fullName = obj.name and obj.className = 'E-nova.E-novaClass'";def listProjetos = services.query.hql(hql0).execute();def json = ['totalprojetos': listProjetos.size(), 'projetos':[1000] , 'edges':[1000] ];def i = 0; for(item in listProjetos){ def hql = "select distinct list from BaseObject as obj, DBStringListProperty as prop join prop.list list where obj.className='XWiki.TagClass' and obj.id=prop.id.id and prop.id.name='tags' and obj.name ='$item' "; def tag = services.query.hql(hql).execute(); i = i + 1; json.projetos.add({ id: xwiki.getDocument(item).getName() })} jsontool.serialize(json); {{/groovy}} Ty. Atenciosamente, Eduardo Abritta e-mail: [email protected] | cel: (32)8472-9631
_______________________________________________ users mailing list [email protected] http://lists.xwiki.org/mailman/listinfo/users
_______________________________________________ users mailing list [email protected] http://lists.xwiki.org/mailman/listinfo/users
-- Thomas Mortagne _______________________________________________ users mailing list [email protected] http://lists.xwiki.org/mailman/listinfo/users
_______________________________________________ users mailing list [email protected] http://lists.xwiki.org/mailman/listinfo/users