Your implementation Does not seem too off , But not sure :/

2024년 10월 18일 (금) 오후 4:06, [email protected] <[email protected]>님이 작성:

> So @JsonMerge is not appropriate here?
>
> On Friday, October 18, 2024 at 1:47:07 AM UTC+3 Joo Hyuk Kim wrote:
>
>> > Jackson should not create any list.
>>
>> To be more specific, You do not want to create any list and ur looking
>> for a such feature.
>>
>> What we can do here  is write a custom deserializer to do such thing and
>> there is already plenty references on the web
>>
>> 2024년 10월 18일 (금) 오전 4:04, [email protected] <[email protected]>님이 작성:
>>
>>> My class contains an initialized custom collection
>>>
>>> class MyClass {
>>>
>>>     MyList<Integer> myList = MyList.create();
>>> }
>>>
>>> where MyList is a j.u.List. When deserializing, I get an exception
>>> saying that there is no known deserializer for MyList ("Cannot find a
>>> deserializer for non-concrete List type"), which is generally
>>> understandable, but I already initialized it, so there's no need for one.
>>> Instead, I just want to add the items to the list.
>>> To demonstrate, I can add a private setter inside the class:
>>>
>>> private void setMyList(List<Integer> ints) { ints.forEach(MyList::add); }
>>>
>>> this works, but I don't think it should be needed. Specifically, Jackson
>>> should not create any list. It needs to deserialize the values of the items
>>> anyway; then instead of creating a list, add them to the existing one. It's
>>> a List, so it should know to call 'add' ('put' for map).
>>>
>>> I know there is @JsonMerge, and I thought that that's what I needed, but
>>> just adding it to the field doesn't work, I still get the same exception.
>>> Am I not understanding @JsonMerge or am I doing something wrong?
>>>
>>> Thanks!
>>>
>>> --
>>> 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 view this discussion on the web visit
>>> https://groups.google.com/d/msgid/jackson-user/af74c8b0-1516-4cc8-9117-be6808cf9223n%40googlegroups.com
>>> <https://groups.google.com/d/msgid/jackson-user/af74c8b0-1516-4cc8-9117-be6808cf9223n%40googlegroups.com?utm_medium=email&utm_source=footer>
>>> .
>>>
>> --
> 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 view this discussion on the web visit
> https://groups.google.com/d/msgid/jackson-user/4446a07a-f0b8-4bad-8442-3571d0a328d3n%40googlegroups.com
> <https://groups.google.com/d/msgid/jackson-user/4446a07a-f0b8-4bad-8442-3571d0a328d3n%40googlegroups.com?utm_medium=email&utm_source=footer>
> .
>

-- 
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 view this discussion on the web visit 
https://groups.google.com/d/msgid/jackson-user/CALS-ipza9oSmb_-8_Avwh%2Bg%3Dqvtw4BH9%3DD6GFTjL3MCoqukMPQ%40mail.gmail.com.

Reply via email to