This can not be done from annotation-based serializer: it will
override default logic.
The only way to access what would otherwise be created/used as the
standard serializer is to register `BeanSerializerModifier`, and
override handling of `modifySerializer`.

-+ Tatu +-


On Mon, Mar 20, 2017 at 11:58 AM, Zsolt Balanyi <zsolt.bala...@gmail.com> wrote:
> Hi!
>
> What I meant is that I would like to get (or create ) the default Jackson
> Serializer for the object being serialized, and store as default.
> Then I could implement serialize as follows:
>
> @Override
> public void serialize(Object o, JsonGenerator jg, SerializerProvider sp)
> throws IOException {
>   doMyStuff...
>   default.serialize(o, jg, sp);
> }
>
> The challenge here is that only a no-arg constructor is called for the
> serializer if the serializer is used in annotation like this:
> @JsonSerialize(using = UIElementSerializer.class)
>
> BR, Zsolt
>
> 2017. március 20., hétfő 19:21:29 UTC+1 időpontban Tatu Saloranta a
> következőt írta:
>>
>> Not 100% sure I understand the question, but if you want to access
>> information about annotations on property, from your custom
>> serializer, you need to implement `ContextualSerializer`, and then its
>> `createContextual()` gets called with `BeanProperty`.
>> `BeanProperty` has accessors for annotation directly; or, you can then
>> call `AnnotationIntrospector` (accessible from `SerializerProvider`
>> that is also passed).
>>
>> -+ Tatu +-
>>
>>
>> On Mon, Mar 20, 2017 at 5:26 AM, Zsolt Balanyi <zsolt....@gmail.com>
>> wrote:
>> > Hi All!
>> >
>> > But what can I do when I want to use annotation, and I don't have access
>> > to
>> > the mapper?
>> > Eg:
>> >
>> > @JsonSerialize(using = ASerializer.class)
>> > public class AClass {
>> > ...
>> > }
>> >
>> > BR, Zsolt
>> >
>> > 2015. június 23., kedd 16:18:36 UTC+2 időpontban Tim Dudgeon a
>> > következőt
>> > írta:
>> >>
>> >> Hi,
>> >>
>> >> I'm writing a custom serialiizer, extending StdSerializer.
>> >> In the
>> >> public void serialize(MoleculeObject mo, JsonGenerator jg,
>> >> SerializerProvider sp)
>> >> method I need to be able to access the default json serialization
>> >> mechanism, but I don't see how to do this.
>> >> I can't call super.serialize() as its abstract, and using
>> >> JsonGenerator.writeObject() or
>> >> SerializerProvider.defaultSerializeValue()
>> >> end up calling my custom serialize() method and end up with stack
>> >> overflow.
>> >>
>> >> How should I be doing this?
>> >>
>> >> Tim
>> >
>> > --
>> > You received this message because you are subscribed to the Google
>> > Groups
>> > "jackson-user" group.
>> > To unsubscribe from this group and stop receiving emails from it, send
>> > an
>> > email to jackson-user...@googlegroups.com.
>> > To post to this group, send email to jackso...@googlegroups.com.
>> > For more options, visit https://groups.google.com/d/optout.
>
> --
> You received this message because you are subscribed to the Google Groups
> "jackson-user" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to jackson-user+unsubscr...@googlegroups.com.
> To post to this group, send email to jackson-user@googlegroups.com.
> For more options, visit https://groups.google.com/d/optout.

-- 
You received this message because you are subscribed to the Google Groups 
"jackson-user" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to jackson-user+unsubscr...@googlegroups.com.
To post to this group, send email to jackson-user@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to