On Sat, Jun 1, 2019 at 8:26 AM 遗迹 <[email protected]> wrote:
>
> Ah, it not makes difference. I upgrade to 2.9.9 version, but the problem 
> still exists. Maybe I should create a issue :)

I think that makes sense, yes.

-+ Tatu +-

>
> Thank you.
>
> 在 2019年6月1日星期六 UTC+8上午7:41:25,Tatu Saloranta写道:
>>
>> On Fri, May 31, 2019 at 3:29 PM 遗迹 <[email protected]> wrote:
>>>
>>> Hello,
>>>
>>> I create a deserializer for match corret subclass of abstract class.
>>>
>>> I register the deserializer for `InputMessageContent`.
>>> But when I call `jp.getCodec().readTree<JsonNode>(jp)` in 
>>> `deserializer(JsonParser jp, DeserializationContext ctxt)`.
>>> It return the parent element which contains  `InputMessageContent`.
>>>
>>> But If I call jp.nextToken() before, it will works.
>>>
>>> It's says:
>>>
>>> input:
>>> {"foo": {"a": "value", "b": "something"}}
>>>
>>> type define:
>>> class Foo{
>>>  InputMessageContent foo;
>>> }
>>>
>>> @JsonDeserialize(using = InputMessageContentDeserializer.class)
>>> class InputMessageContent{
>>>  String a;
>>>  String b;
>>> }
>>>
>>> Output:
>>> jp.getCodes().readTree(jp).toString()=="{"foo": {"a": "value", "b": 
>>> "something"}}"
>>> //I wish it should be "{"a": "value", "b": "something"}"   <--- If I call 
>>> jp.nextToken() before.
>>>
>>>
>>>
>>> In fact, I'm use Kotlin for this.
>>> The source code is long:
>>> https://paste.ubuntu.com/p/X2qSNGSQGp/
>>>
>>
>> I agree: it should not be necessary to call `nextToken()` at that point.
>>
>> But instead of
>>
>> `jp.getCodec().readTree<JsonNode>(jp)`
>>
>> I would just call
>>
>> `jp.readValueAsTree()`
>>
>> Not sure if that makes a difference. Also make sure to use a new version of 
>> `jackson-databind` and `jackson-core`.
>>
>> I hope this helps,
>>
>> -+ Tatu +-
>>
>>
>>
>>
>>
>
> --
> 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 [email protected].
> To post to this group, send email to [email protected].
> To view this discussion on the web visit 
> https://groups.google.com/d/msgid/jackson-user/d3c6a9f4-4330-4ef0-9544-d119daf5e203%40googlegroups.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 [email protected].
To post to this group, send email to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/jackson-user/CAL4a10h2PApa8eRQep%3DokCSf55WVD6FsL6JFKxqJsu26mDgx0w%40mail.gmail.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to