On Fri, Mar 9, 2012 at 17:17, Jerome Velociter <[email protected]>wrote:

> On Fri, Mar 9, 2012 at 4:51 PM, Denis Gervalle <[email protected]> wrote:
> > On Fri, Mar 9, 2012 at 16:08, Marius Dumitru Florea <
> > [email protected]> wrote:
> >
> >> On Fri, Mar 9, 2012 at 4:47 PM, Jerome Velociter <[email protected]
> >
> >> wrote:
> >> > On Fri, Mar 9, 2012 at 3:26 PM, Marius Dumitru Florea
> >> > <[email protected]> wrote:
> >> >> On Fri, Mar 9, 2012 at 4:10 PM, Vincent Massol <[email protected]>
> >> wrote:
> >> >>>
> >> >>> On Mar 9, 2012, at 3:02 PM, Denis Gervalle wrote:
> >> >>>
> >> >>>> On Fri, Mar 9, 2012 at 14:54, Marius Dumitru Florea <
> >> >>>> [email protected]> wrote:
> >> >>>>
> >> >>>>> Hi devs,
> >> >>>>>
> >> >>>>> Some time ago Jerome Velociter raised a vote [1] for adding a JSON
> >> >>>>> Velocity Tool. The vote passed but the tool wasn't committed. I'd
> >> like
> >> >>>>> to do it know (for 4.0M1) with two changes:
> >> >>>>>
> >> >>>>> 1. Use Jackson [2] instead of json-lib [3] because it has a more
> >> recent
> >> >>>>> release
> >> >>>>>
> >> >>>>
> >> >>>> Isn't  json-lib already a dependency available, should we use
> another
> >> one ?
> >> >>>
> >> >>> +1 to use only one json lib in xwiki! :)
> >> >>
> >> >> Fine.. since json-lib is already used in public API
> >> >> (com.xpn.xwiki.plugin.packaging.PackageAPI) I'll stick with it.
> >> >
> >> > Jackson is considered faster, by several orders. Some articles/threads
> >> > that talks about it :
> >> > -
> >>
> http://www.lshift.net/blog/2011/12/28/benchmarking-simple-json-generation-in-java
> >> > - http://www.sencha.com/forum/archive/index.php/t-94883.html
> >> >
> >>
> >> > It can be a case for Jackson : if we are to use that tool for
> >> > generating livetable values, performance is a big deal.
> >>
> >> That's my use case. I want to refactor the macros from
> >> XWiki.LiveTableResultsMacros to generate the "JSON" in memory (using
> >> actually plain Java data types like maps and lists/arrays) so that I
> >> can adjust it before the response is send to the client. This way I
> >> can avoid duplicating the code from XWiki.LiveTableResultsMacros just
> >> to add a new property to the generated JSON or to modify the value of
> >> an existing property.
> >>
> >> Since json-lib is used only in xwiki-platform-oldcore by the package
> >> plugin I think it's fine to:
> >>
> >> * use Jackson in JSONTool
> >> * when we refactor the package plugin into a component (if we still
> >> needed it at that point) we can also change the code to use Jackson. I
> >> can add a comment in the pom for this so that we don't forget about
> >> it.
> >>
> >> WDYT?
> >>
> >
> > What about groovy ? the JSONBuilder provided by json-lib is nice to have,
> > and is one of the motivation of the initial thread.
> > I am not asking for annoying you, we use all that already in many sites.
> I
> > am not against improving, but we should also be careful to not break
> > existing stuffs.
>
> I'm not sure what's the problem/how groovy changes the picture here.
> Right now json-lib is bundled with XWiki and used internally, but not
> exposed. I don't think bundled jars should be assumed stable over
> time. Do we have a rule for this ?
>
> In any case that's not good enough a reason to ditch jackson in favor
> of json-lib, IMHO. Worse case, it's an argument in favor of keeping
> json-lib in the classpath in addition to whatever other lib we decide
> to use - should we decide to use something else than json-lib.
>

That was my concern, you expressed yourself better than I have.
The question is simply, is Jackson so much better that we want to have
both, or drop some compatibility.


>
> >
> >
> >>
> >> I'm +1 for this.
> >>
> >> Thanks,
> >> Marius
> >>
> >> >
> >> > my 2 cents
> >> >
> >> > Jerome
> >> >
> >> >
> >> >>
> >> >> Thanks,
> >> >> Marius
> >> >>
> >> >>>
> >> >>> Thanks
> >> >>> -Vincent
> >> >>>>
> >> >>>>
> >> >>>>> 2. Add only the toJSON method for now because we can use
> >> >>>>> $escapetool.javascript to accomplish the same result as
> toValueString
> >> >>>>>
> >> >>>>> Reply quickly if you are against it.
> >> >>>>>
> >> >>>>> Thanks,
> >> >>>>> Marius
> >> >>>>>
> >> >>>>> [1] http://www.mail-archive.com/[email protected]/msg11395.html
> >> >>>>> [2] http://jackson.codehaus.org/
> >> >>>>> [3] http://json-lib.sourceforge.net/
> >> >>> _______________________________________________
> >> >>> devs mailing list
> >> >>> [email protected]
> >> >>> http://lists.xwiki.org/mailman/listinfo/devs
> >> >> _______________________________________________
> >> >> devs mailing list
> >> >> [email protected]
> >> >> http://lists.xwiki.org/mailman/listinfo/devs
> >> >
> >> >
> >> > --
> >> > Jérôme Velociter
> >> > Winesquare
> >> > http://www.winesquare.net/
> >> > _______________________________________________
> >> > devs mailing list
> >> > [email protected]
> >> > http://lists.xwiki.org/mailman/listinfo/devs
> >> _______________________________________________
> >> devs mailing list
> >> [email protected]
> >> http://lists.xwiki.org/mailman/listinfo/devs
> >>
> >
> >
> >
> > --
> > Denis Gervalle
> > SOFTEC sa - CEO
> > eGuilde sarl - CTO
> > _______________________________________________
> > devs mailing list
> > [email protected]
> > http://lists.xwiki.org/mailman/listinfo/devs
>
>
>
> --
> Jérôme Velociter
> Winesquare
> http://www.winesquare.net/
> _______________________________________________
> devs mailing list
> [email protected]
> http://lists.xwiki.org/mailman/listinfo/devs
>



-- 
Denis Gervalle
SOFTEC sa - CEO
eGuilde sarl - CTO
_______________________________________________
devs mailing list
[email protected]
http://lists.xwiki.org/mailman/listinfo/devs

Reply via email to