@Target({ANNOTATION_TYPE,METHOD,FIELD}) @Retention(RUNTIME) public @interface JsonAnySetter
Marker annotation that can be used to define a logical "any setter" mutator -- either using non-static two-argument method (first argument name of property, second value to set) or a field (of type Map or POJO) - to be used as a "fallback" handler for all otherwise unrecognized properties found from JSON content. It is similar to javax.xml.bind.annotation.XmlAnyElement in behavior; and can only be used to denote a single property per type.

If used, all otherwise unmapped key-value pairs from JSON Object values are added using mutator.

NOTE: ability to annotated fields was added in version 2.8; earlier only methods could be annotated.

  • Optional Element Summary

    Optional Elements
    Modifier and Type
    Optional Element
    Description
    boolean
    Optional argument that defines whether this annotation is active or not.
  • Element Details

    • enabled

      boolean enabled
      Optional argument that defines whether this annotation is active or not. The only use for value 'false' if for overriding purposes. Overriding may be necessary when used with "mix-in annotations" (aka "annotation overrides"). For most cases, however, default value of "true" is just fine and should be omitted.
      Returns:
      True if annotation is enabled (normal case); false if it is to be ignored (only useful for mix-in annotations to "mask" annotation)
      Since:
      2.9
      Default:
      true