2018-04-24 11:46 GMT+02:00 Alessandro Moscatelli <
[email protected]>:
> Shouldn’t the @Polymorphic.JsonId (defaulting to simple name if absent) be
> the meta to use to know what you will deserialize ?
>
Yes, that's what it is actually but how do you find it?
Scanning? means you are slow for no real gain + you can conflict between
libraries and models
>
> By the way, how the Polymorphic.JsonId will be serialized ? This is not
> specified in the index.md.
>
{_type: <id>,_value: <value>}
>
>
>
>
>
> ________________________________
> Da: Romain Manni-Bucau <[email protected]>
> Inviato: Tuesday, April 24, 2018 11:42:13 AM
> A: [email protected]
> Oggetto: Re: Arrays / Lists elements polymorphic support
>
> Not it wouldn't work since when you deserialize you don't have any meta on
> what you will deserialize.
>
> There are alternative to this impl but this is the one requiring the least
> configuration I think.
>
>
> Romain Manni-Bucau
> @rmannibucau <https://twitter.com/rmannibucau> | Blog
> <https://rmannibucau.metawerx.net/> | Old Blog
> <http://rmannibucau.wordpress.com> | Github <https://github.com/
> rmannibucau> |
> LinkedIn <https://www.linkedin.com/in/rmannibucau> | Book
> <https://www.packtpub.com/application-development/java-
> ee-8-high-performance>
>
> 2018-04-24 11:39 GMT+02:00 Alessandro Moscatelli <
> [email protected]>:
>
> > I think I would be great if this could be part of the Jsonb spec.
> > I noticed the lack of real support for polymorphism.
> >
> > Regarding your impl :
> >
> > What if you need a Collection of polymorphic entities ?
> > Wouldn’t it be better to declare the
> >
> > @JsonbTypeSerializer(Polymorphic.Serializer.class)
> > @JsonbTypeDeserializer(Polymorphic.DeSerializer.class)
> >
> > Directly on the root entity instead of declare them on the field ?
> > Would it work ?
> >
> > AM
> >
> > Da: Romain Manni-Bucau<mailto:[email protected]>
> > Inviato: lunedì 23 aprile 2018 19:03
> > A: [email protected]<mailto:[email protected]>
> > Oggetto: Re: Arrays / Lists elements polymorphic support
> >
> > Ok
> >
> > Will try to adapt the impl we had and push it later today or tmr and ping
> > here for feedbacks
> >
> > Le 23 avr. 2018 18:46, "Jean-Louis MONTEIRO" <[email protected]> a
> écrit
> > :
> >
> > > That works for me.
> > > I agree that having that extension into a specific module is the way to
> > go
> > >
> > > Le lun. 23 avr. 2018 à 18:44, Romain Manni-Bucau <
> [email protected]>
> > a
> > > écrit :
> > >
> > > > Maybe raise a spec issue since we tend to be jsonb driven now. Would
> be
> > > > great to not have a custom api for the id mapping.
> > > >
> > > > In the mean time we can push a jsonb-extra with that impl
> > > >
> > > > Le 23 avr. 2018 18:39, "Jean-Louis MONTEIRO" <[email protected]> a
> > > écrit
> > > > :
> > > >
> > > > > Hey Roberto,
> > > > >
> > > > > I think that would be a great feature.
> > > > > Already had this case in the past and looks like Jackson and Gson
> > > already
> > > > > have it.
> > > > >
> > > > > Gson subtypes on adapters.
> > > > > https://github.com/google/gson/blob/master/extras/src/
> > > > > main/java/com/google/gson/typeadapters/
> > RuntimeTypeAdapterFactory.java
> > > > >
> > > > >
> > > > > Jackson annotations with different strategies
> > > > > https://github.com/FasterXML/jackson-docs/wiki/
> > > > > JacksonPolymorphicDeserialization
> > > > >
> > > > > We should consider adding this feature I believe.
> > > > >
> > > > >
> > > > > Le mer. 18 avr. 2018 à 19:42, Roberto Cortez
> > > <[email protected]
> > > > >
> > > > > a écrit :
> > > > >
> > > > > > Hi Romain,
> > > > > > Thanks for the quick response.
> > > > > > I'll have a look,
> > > > > > Cheers,Roberto
> > > > > > On Wednesday, April 18, 2018, 6:35:32 PM GMT+1, Romain
> > > Manni-Bucau
> > > > <
> > > > > > [email protected]> wrote:
> > > > > >
> > > > > > Hi Roberto
> > > > > >
> > > > > > Yes, an adapter is the way to go using our mapper or jsonb.
> > > > > >
> > > > > > There should be an "animal" test showing how to do that. Just
> dont
> > > > forget
> > > > > > to use class aliases or a whitelist logic to not open a backdoor.
> > > > > >
> > > > > > Since the model doesnt match the java model im not a fan of that
> > > > feature
> > > > > > being built out of the box. In xml it is more natural but in json
> > you
> > > > can
> > > > > > do it without breaking the model. For me it means the model is
> > broken
> > > > and
> > > > > > must not be used as an input.
> > > > > >
> > > > > > Le 18 avr. 2018 19:31, "Roberto Cortez"
> > <[email protected]
> > > >
> > > > a
> > > > > > écrit :
> > > > > >
> > > > > > > Hi guys,
> > > > > > > I'm trying to serialize a list of elements of multiple types
> and
> > > then
> > > > > > > deserialize it again. It does require to somehow include the
> type
> > > in
> > > > > the
> > > > > > > serialization result to know to which type we should map to
> > > > > deserialize.
> > > > > > I
> > > > > > > think this could possible be done with an Adapter and playing
> > with
> > > > the
> > > > > > > JsonArray.
> > > > > > > I was just wondering if there any kind of out of the box
> support
> > > for
> > > > > > this.
> > > > > > > It doesn't seem so, at least I was not able to find.
> > > > > > > Jackson for instance, includes a set of annotations that allow
> > you
> > > to
> > > > > do
> > > > > > > exactly this, without any extra / custom code.
> > > > > > > Any thoughts?
> > > > > > > Thank you.
> > > > > > > Cheers,Roberto
> > > > >
> > > >
> > >
> >
> >
>