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
>>>>> 
>>> 
>>> 
>> 

Reply via email to