- Sponsor
-
Notifications
You must be signed in to change notification settings - Fork 221
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Problem when using defaultUseWrapper(false) in combination with polymorphic types #490
Comments
I tried with the recent patch release |
I found that the commit d9738d92 introduced a regression that results in this issue. @cowtowncoder A fix might be as easy as this: lglauer@48d0b81 , do you think this is a proper solution? |
@cowtowncoder Please tell us if you consider this as a bug that is going to be fixed in the future (e.g. by applying our proposed pull request) or if it is something that we did wrong. This information would help us a lot in order to decide whether we should just wait or fork the project and apply the fix to the fork. At the moment this blocks us from using a recent version of jackson. Sooner or later it will become incompatible with other libraries. Therefore we need a solution. Thanks in advance! |
Unfortunately I have had very little time to spend on Jackson for past couple of months, so this fell through the cracks. |
Thank you very much! 🙂 |
Ok it took bit longer (apologies, I have been bit burnt out, but now regaining my energy for some OSS work :) ) but I did merge suggested fix. It will go in 2.12.6 and 2.13.1 releases. It does look, from above, that there is at least one remaining problem (failure on 2.11 and 2.12), so it'd make sense to file a follow up issue with that test; I will consider this one just for the regression part which is most critical to fix first. Thank you @daniel-kr for reporting this, @lglauer for contributing the fix! |
Thank you! 🙂 |
Hey! I think we can close this issue. Problem is solved in recent versions. Thanks again! |
Yes, was included in 2.12.6 but seems I forgot to close the issue. Thanks! |
Hello,
we are currently trying to upgrade
jackson-dataformat-xml
in our product from2.11.4
to2.12.4
.However, with the new version we encounter problems when it comes to using
defaultUseWrapper(false)
in combination with polymorphic types.Given the following interface and concrete implementation:
Now doing a roundtrip serialization using the following code:
While this works great on version
2.11.4
, it produces the following exception during de-serialization on2.12.4
:The produced XML looks as follows on both versions:
During the tests we recognized the following behavior:
MyType
instead of the interfaceIMyType
in the call toreadValue
works on both versions.stringValue
and leaving just the collection attribute leads to an exception on2.11.4
as well, but a slightly different one.defaultUseWrapper(true)
works on both versions. Unfortunately, this is not an option in our case since it changes the XML format and we need to be backwards compatible.EMPTY_ELEMENT_AS_NULL
does not have any influence on the mentioned behavior.ACCEPT_SINGLE_VALUE_AS_ARRAY
prevents the exception but de-serializes only the last element of the collection.I uploaded the example to GitHub:
2.12.x
: https://github.com/daniel-kr/jackson-xml-test2.11.4
: https://github.com/daniel-kr/jackson-xml-test/tree/tmp/fails-also-with-2-11Thanks in advance!
The text was updated successfully, but these errors were encountered: