Hi Martin, sadly there are classes not covered by open-json, but for all others we could make different PRs for 6.x and 7.x and copy them. In this case I would suggest to also let the name of JSONFunction to be like I renamed it.
kind regards Tobias > Am 24.11.2016 um 21:46 schrieb Martin Grigorov <[email protected]>: > > Hi Tobias, > > This PR is OK for 8.x but as Emond said: making such change in 6.x and 7.x > is a *BIG* API break. > 1.5.x is not affected because we introduced JSON.org for the Ajax rework in > Wicket 6.0.0. > I believe the easier solution for 6.x and 7.x is to copy the classes from > Open-JSON and replace the current ones. > > Martin Grigorov > Wicket Training and Consulting > https://twitter.com/mtgrigorov > > On Thu, Nov 24, 2016 at 7:01 PM, Tobias Soloschenko < > [email protected]> wrote: > >> Hi, >> >> to provide the most possible backward compatibility I think open-json is >> great: >> >> https://github.com/apache/wicket/pull/193 >> https://github.com/tdunning/open-json/pull/1 >> https://github.com/apache/wicket/pull/193 >> >> I also think that we should move the classes out and use the external lib. >> >> Libraries which are using Apache Wicket JSON only have to organize the >> imports in most cases. If classes are used which are not ported yet - you >> can exclude open-json and shift to json.org - or you can implement it >> yourself. >> >> WDYT? >> >> kind regards >> >> Tobias >> >> 2016-11-23 21:26 GMT+01:00 Mark Struberg <[email protected]>: >> >>> Try Apache Johnzon. >>> It is really tiny (< 100k) and already used in CXF and TomEE as well for >>> example. >>> It's based on the JSON-P specification, so it's even optional if you run >>> Wicket on a EE7 server. >>> >>> LieGrue, >>> strub >>> >>> >>>> Am 23.11.2016 um 20:24 schrieb Emond Papegaaij < >>> [email protected]>: >>>> >>>> Hi, >>>> >>>> Does this mean we can no longer include these files in Wicket 6 and 7? >>>> If so, that would mean a serious API break, or we need to duplicate >>>> the entire API in new classes. The classes are part of the public API >>>> of AbstractDefaultAjaxBehavior and the classes are publicly available. >>>> >>>> Looking at the usage of the classes in Wicket, I don't see why we need >>>> a heavy weight library such as Jackson. Also, Jackson has a history of >>>> breaking its API even in patch releases. It has proven one of the most >>>> unreliable libraries in our applications over the past few years. >>>> >>>> Wicket only uses the JSON classes in 3 places: >>>> AbstractDefaultAjaxBehavior, AtmosphereParameters and ModalWindow. I >>>> think we should either find a lightweight substitute or write >>>> something ourselves from scratch. As far as I can see, we only use the >>>> classes to render Maps and arrays to JSON. We do not seem to be using >>>> them for parsing. >>>> >>>> Best regards, >>>> Emond >>>> >>>> On Wed, Nov 23, 2016 at 7:44 PM, Mark Struberg >>>> <[email protected]> wrote: >>>>> This benchmark is also not really correct. >>>>> For Johnzon it creates a new JsonProvider for each and every >>> invocation. This heavily slows down the performance. >>>>> >>>>> LieGrue, >>>>> strub >>>>> >>>>>> Am 23.11.2016 um 18:37 schrieb Martin Grigorov <[email protected] >>> : >>>>>> >>>>>> https://github.com/fabienrenaud/java-json-benchmark >>>>> >>> >>> >>
