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 
keyword in the JSON key.
"schema": {
 "$ref": "#/components/schemas/user" 

Since the commit bcf51d2e5b1267dcf317816b7db759460cb3c715 ([more global exclude 
rules for fields and 
 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 

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

*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

Reply via email to