johnzon-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Benoit Prudhomme (Jira)" <>
Subject [jira] [Created] (JOHNZON-307) POJO's field or method name containing the $ character is not serialized
Date Wed, 25 Mar 2020 14:41:00 GMT
Benoit Prudhomme created JOHNZON-307:

             Summary: POJO's field or method name containing the $ character is not serialized
                 Key: JOHNZON-307
             Project: Johnzon
          Issue Type: Bug
          Components: Mapper
    Affects Versions: 1.2.3, 1.1.12
            Reporter: Benoit Prudhomme
             Fix For: 1.2.4

We are building an _Open API 3.0_ generator based on _io.swagger.core.v3:swagger-models:2.1.1_.
The features coming from the version 3.0 are *mandatory* for us, specially the ability to
make references.
However references use the _*$ref*_ ([Structuring a complex JSON schema|])
keyword in the JSON key.
"schema": {
 "$ref": "#/components/schemas/user" 

Since the commit bcf51d2e5b1267dcf317816b7db759460cb3c715 ([more global exclude rules for
fields and methods|]),
every field or method name containing the _*$*_ is ignore and not serialized.


Currently, we extended the classes:

to override this behavior. 
Unfortunatly, the class
and every classes making direct references to them have to be forked to use our extensions.

Since the _*isIgnored*_ method is _*protected*_ we though that the behavior could be easily

*Can the ignore filter be fixed to allow, at least, the _$ref_ keyword ?* 
*In absence of fix, can you provide us the best way to override the ignore filter algorithm

Note: since _*$id*_ and _*$schema*_ are specified as well in the JSON Schema, they should
not be filtered when present in POJO's field or method name.

This message was sent by Atlassian Jira

View raw message