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: eduardo.abri...@outlook.com | cel: (32)8472-9631

> From: eduardo.abri...@outlook.com
> To: users@xwiki.org
> 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: eduardo.abri...@outlook.com | cel: (32)8472-9631
> 
> 
> 
> > Date: Fri, 27 Jun 2014 11:51:47 +0200
> > From: thomas.morta...@xwiki.com
> > To: users@xwiki.org
> > 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
> > <c.robbenh...@espresto.com> 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: eduardo.abri...@outlook.com | cel: (32)8472-9631
> > >>
> > >>
> > >> _______________________________________________
> > >> users mailing list
> > >> users@xwiki.org
> > >> http://lists.xwiki.org/mailman/listinfo/users
> > >>
> > >
> > >
> > > _______________________________________________
> > > users mailing list
> > > users@xwiki.org
> > > http://lists.xwiki.org/mailman/listinfo/users
> > 
> > 
> > 
> > -- 
> > Thomas Mortagne
> > _______________________________________________
> > users mailing list
> > users@xwiki.org
> > http://lists.xwiki.org/mailman/listinfo/users
>                                         
> _______________________________________________
> users mailing list
> users@xwiki.org
> http://lists.xwiki.org/mailman/listinfo/users
                                          
_______________________________________________
users mailing list
users@xwiki.org
http://lists.xwiki.org/mailman/listinfo/users

Reply via email to