The transformation from Errai JSON to Jackson's JSON contains the following steps:

For all JSON objects, recursively remove the Errai specific OBJECT_ID and ENCODED_TYPE
values

Keep a reference to the removed OBJECT_IDs, so back-references can be resolved

If an array is encountered, process all its elements, then remove the Errai specific
QUALIFIED_VALUE key, by associating its actual value with the object's key directly: "list":
{"^Value": ["e1","e2"]} becomes "list": ["e1","e2"]