diff options
author | Tatu Saloranta <tatu.saloranta@iki.fi> | 2018-05-04 16:04:21 -0700 |
---|---|---|
committer | Tatu Saloranta <tatu.saloranta@iki.fi> | 2018-05-04 16:04:21 -0700 |
commit | ac82499e5ac9ecbf39e497462aa9542ca0195158 (patch) | |
tree | 2fb30084dd9c79962ffa516f76d63942fbc14d64 /src/main/java/com/fasterxml/jackson/databind/introspect | |
parent | fa240ddb775e7194404c54dd445c6cd8bb9ee06c (diff) | |
download | jackson-databind-ac82499e5ac9ecbf39e497462aa9542ca0195158.tar.gz |
Fix #2021
Diffstat (limited to 'src/main/java/com/fasterxml/jackson/databind/introspect')
-rw-r--r-- | src/main/java/com/fasterxml/jackson/databind/introspect/JacksonAnnotationIntrospector.java | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/src/main/java/com/fasterxml/jackson/databind/introspect/JacksonAnnotationIntrospector.java b/src/main/java/com/fasterxml/jackson/databind/introspect/JacksonAnnotationIntrospector.java index 580f972a3..823deb622 100644 --- a/src/main/java/com/fasterxml/jackson/databind/introspect/JacksonAnnotationIntrospector.java +++ b/src/main/java/com/fasterxml/jackson/databind/introspect/JacksonAnnotationIntrospector.java @@ -997,15 +997,21 @@ public class JacksonAnnotationIntrospector @Override public PropertyName findNameForSerialization(Annotated a) { + boolean useDefault = false; JsonGetter jg = _findAnnotation(a, JsonGetter.class); if (jg != null) { - return PropertyName.construct(jg.value()); + String s = jg.value(); + // 04-May-2018, tatu: Should allow for "nameless" `@JsonGetter` too + if (!s.isEmpty()) { + return PropertyName.construct(s); + } + useDefault = true; } JsonProperty pann = _findAnnotation(a, JsonProperty.class); if (pann != null) { return PropertyName.construct(pann.value()); } - if (_hasOneOf(a, ANNOTATIONS_TO_INFER_SER)) { + if (useDefault || _hasOneOf(a, ANNOTATIONS_TO_INFER_SER)) { return PropertyName.USE_DEFAULT; } return null; |