Probably worth filing an issue for. I don't know what might be wrong from JSON alone, type declarations are necessary (and included in the test repo).
-+ Tatu +- On Wed, Jul 1, 2020 at 3:08 PM Alex T <[email protected]> wrote: > > Anybody here? :) > > On Thursday, May 14, 2020 at 7:00:47 PM UTC+3, Alex T wrote: >> >> Hi Tatu! >> >> I need to serialize/deserialize untyped collections, and I get issue when >> deserialing. I push failing unit test in my repository: >> https://github.com/alex-t0/deserialization-fail-example/blob/master/src/test/java/deserialization/fail/example/DeserializationFromUntypedCollectionsTest.java. >> >> In this test I have simple User class and dummy UserContainer class, that >> has one User property. Next, I create an array of 2 elements: user and >> userContainer with reference to same user. >> >> When first element of array is user, and second is container - >> deserialization works fine. I get this serialized string: >> >> [ >> "java.util.ArrayList", >> [ >> [ >> "deserialization.fail.example.User", >> { >> "id": 42, >> "login": "cool_man" >> } >> ], >> [ >> "deserialization.fail.example.UserContainer", >> { >> "user": 42 >> } >> ] >> ] >> ] >> >> Because jackson knows what is 42 here. >> >> But if I put userContainer at first place in my array, and user at second >> place, serialized data would be >> >> [ >> "java.util.ArrayList", >> [ >> [ >> "deserialization.fail.example.UserContainer", >> { >> "user": [ >> "deserialization.fail.example.User", >> { >> "id": 42, >> "login": "cool_man" >> } >> ] >> } >> ], >> 42 >> ] >> ] >> >> So, user serialized as id, but no type information saved about user. And >> when I deserialize this I get an array with Integer 42 at second place, not >> user. >> >> How to serialize untyped collections properly? > > -- > 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/aee933cb-80ca-4798-bde3-31386231f400o%40googlegroups.com. -- 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/CAL4a10gxLPH2z0%3DGk4zp%3DvqvXKNN9LZrWqMSgPtUFMMcihPA9Q%40mail.gmail.com.
