diff options
Diffstat (limited to 'src/main/java/com/fasterxml/jackson/databind/deser/BeanDeserializerFactory.java')
-rw-r--r-- | src/main/java/com/fasterxml/jackson/databind/deser/BeanDeserializerFactory.java | 13 |
1 files changed, 7 insertions, 6 deletions
diff --git a/src/main/java/com/fasterxml/jackson/databind/deser/BeanDeserializerFactory.java b/src/main/java/com/fasterxml/jackson/databind/deser/BeanDeserializerFactory.java index 585bc121f..3249c5923 100644 --- a/src/main/java/com/fasterxml/jackson/databind/deser/BeanDeserializerFactory.java +++ b/src/main/java/com/fasterxml/jackson/databind/deser/BeanDeserializerFactory.java @@ -1045,8 +1045,14 @@ public class BeanDeserializerFactory for (String propName : ignored) { builder.addIgnorable(propName); } + // Also, do we have a fallback "any" setter? + AnnotatedMethod anySetter = beanDesc.findAnySetter(); + if (anySetter != null) { + builder.setAnySetter(constructAnySetter(config, beanDesc, anySetter)); + } + // NOTE: we do NOT add @JsonIgnore'd properties into blocked ones if there's any setter // Implicit ones via @JsonIgnore and equivalent? - { + if (anySetter == null) { Collection<String> ignored2 = beanDesc.getIgnoredPropertyNames(); if (ignored2 != null) { for (String propName : ignored2) { @@ -1104,11 +1110,6 @@ public class BeanDeserializerFactory } } } - // Also, do we have a fallback "any" setter? - AnnotatedMethod anySetter = beanDesc.findAnySetter(); - if (anySetter != null) { - builder.setAnySetter(constructAnySetter(config, beanDesc, anySetter)); - } /* As per [JACKSON-88], may also need to consider getters * for Map/Collection properties |