You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@johnzon.apache.org by "Steven Walters (JIRA)" <ji...@apache.org> on 2017/12/29 08:57:02 UTC

[jira] [Created] (JOHNZON-152) Ability to serialize field of a type from value introspection instead of field introspection

Steven Walters created JOHNZON-152:
--------------------------------------

             Summary: Ability to serialize field of a type from value introspection instead of field introspection
                 Key: JOHNZON-152
                 URL: https://issues.apache.org/jira/browse/JOHNZON-152
             Project: Johnzon
          Issue Type: Wish
          Components: Mapper
    Affects Versions: 1.1.5
            Reporter: Steven Walters
            Priority: Minor


In our project, we have a few types that have an Object field that is used to accept a few different types of objects.
* Sometimes the field is an effective primitives (Float, Integer, Long, etc)
* Sometimes they're Collections (List, Set) 
* Sometimes they're other custom defined objects

Right now johnzon mapper determines the type of the field based on its defined type "Object" which means just about nothing. This almost always causes serialization issues (with default behavior) unless its null.

We would like to have an annotation (such as @JohnzonDynamic) to indicate the field is dynamic and its type should be determined via introspection of the value, rather than the field's declared type. Similar to how a map's value is done.

For simplicity, this could be considered a read-only field to avoid the complexity of trying to set this field to whatever data comes in during deserialization.

Right now we're working around this via a custom ObjectWriter that converts the object to a map and then passes the map to serialization, which has some inconveniences of maintenance.
Maybe other projects could see some use of this?



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)