[MGNLREST-83] JSON output suddenly changed without changing API version number Created: 13/Feb/17  Updated: 15/Mar/17  Resolved: 14/Mar/17

Status: Closed
Project: Magnolia REST Framework
Component/s: services
Affects Version/s: 1.2
Fix Version/s: 1.2.1

Type: Bug Priority: Blocker
Reporter: Nickolaus Wing Assignee: Philip Mundt
Resolution: Fixed Votes: 0
Labels: apiteam, support
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Relates
relates to MGNLCE-79 Create integration tests for the rest... Closed
causality
caused by MGNLRESTCL-23 Implement provider that delegates to... Closed
relation
is related to DOCU-952 Update "REST API" Closed
Template:
Acceptance criteria:
Empty
Task DoD:
[ ]* Doc/release notes changes? Comment present?
[ ]* Downstream builds green?
[ ]* Solution information and context easily available?
[ ]* Tests
[ ]* FixVersion filled and not yet released
[ ]  Architecture Decision Record (ADR)
Bug DoR:
[ ]* Steps to reproduce, expected, and actual results filled
[ ]* Affected version filled
Documentation update required:
Yes
Date of First Response:
Sprint: Basel 87
Story Points: 5

 Description   

We are in the process of upgrading from 5.4.x to 5.5.1, and our QA revealed that all of our RESTful integrations are broken, because the 'nodes' and 'properties' keys on each node have been renamed to 'node' and 'property'.



 Comments   
Comment by Michael Mühlebach [ 02/Mar/17 ]

The issue originates from a bug in the jackson version RESTeasy is using. Thats why the issue only occurs on JSON output and not on XML.
So the most straight forward solution might be to just set the jackson version in rest module to a newer one.
We probably should release rest & restcl separately after fixing that issue.

Comment by Philip Mundt [ 14/Mar/17 ]
For documentation:

As mmuehlebach already mentioned this problem is caused by MGNLRESTCL-23 that brings in org.jboss.resteasy:resteasy-jackson2-provider:3.0.19.Final which has a transitive dependency to com.fasterxml.jackson.core:jackson-annotations:2.6.3. The new class info.magnolia.resteasy.client.components.RestEasyDelegateJacksonProvider makes "jackson2" the de-facto standard in our webapps. To steer the serialization of (here mainly) java.util.List (singular vs. plural) we override the problematic output via com.fasterxml.jackson.annotation.JsonProperty annotation. This might be the recommended way for custom endpoints too.

Comment by Pierre Sandrin [ 14/Mar/17 ]

Hello Magnolians
Will it be "node" or "nodes" in the next release. (5.5.3)? We just had to fix our Javascript code for the REST calls to work again and it would be nice to know if we have to "fix it back" with the next release.
Thanks!

Comment by Philip Mundt [ 14/Mar/17 ]

Hi pierre.
Yes indeed, it will be fixed in the next release (propertyproperties, nodenodes and valuevalues).
Sorry for the inconveniences!

Generated at Mon Feb 12 06:56:25 CET 2024 using Jira 9.4.2#940002-sha1:46d1a51de284217efdcb32434eab47a99af2938b.