aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/com/fasterxml/jackson/databind/deser/BeanDeserializerFactory.java
diff options
context:
space:
mode:
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.java13
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