Browse Source

Always invoke Jackson serialization with AtomicReference cause

Issue: SPR-15760
(cherry picked from commit 5f767a8)
pull/1479/head
Juergen Hoeller 9 years ago
parent
commit
121a3bf670
  1. 6
      spring-messaging/src/main/java/org/springframework/messaging/converter/MappingJackson2MessageConverter.java
  2. 6
      spring-web/src/main/java/org/springframework/http/converter/json/AbstractJackson2HttpMessageConverter.java

6
spring-messaging/src/main/java/org/springframework/messaging/converter/MappingJackson2MessageConverter.java

@ -142,9 +142,6 @@ public class MappingJackson2MessageConverter extends AbstractMessageConverter {
return false; return false;
} }
JavaType javaType = this.objectMapper.constructType(targetClass); JavaType javaType = this.objectMapper.constructType(targetClass);
if (!logger.isWarnEnabled()) {
return this.objectMapper.canDeserialize(javaType);
}
AtomicReference<Throwable> causeRef = new AtomicReference<Throwable>(); AtomicReference<Throwable> causeRef = new AtomicReference<Throwable>();
if (this.objectMapper.canDeserialize(javaType, causeRef)) { if (this.objectMapper.canDeserialize(javaType, causeRef)) {
return true; return true;
@ -158,9 +155,6 @@ public class MappingJackson2MessageConverter extends AbstractMessageConverter {
if (payload == null || !supportsMimeType(headers)) { if (payload == null || !supportsMimeType(headers)) {
return false; return false;
} }
if (!logger.isWarnEnabled()) {
return this.objectMapper.canSerialize(payload.getClass());
}
AtomicReference<Throwable> causeRef = new AtomicReference<Throwable>(); AtomicReference<Throwable> causeRef = new AtomicReference<Throwable>();
if (this.objectMapper.canSerialize(payload.getClass(), causeRef)) { if (this.objectMapper.canSerialize(payload.getClass(), causeRef)) {
return true; return true;

6
spring-web/src/main/java/org/springframework/http/converter/json/AbstractJackson2HttpMessageConverter.java

@ -155,9 +155,6 @@ public abstract class AbstractJackson2HttpMessageConverter extends AbstractGener
return false; return false;
} }
JavaType javaType = getJavaType(type, contextClass); JavaType javaType = getJavaType(type, contextClass);
if (!logger.isWarnEnabled()) {
return this.objectMapper.canDeserialize(javaType);
}
AtomicReference<Throwable> causeRef = new AtomicReference<Throwable>(); AtomicReference<Throwable> causeRef = new AtomicReference<Throwable>();
if (this.objectMapper.canDeserialize(javaType, causeRef)) { if (this.objectMapper.canDeserialize(javaType, causeRef)) {
return true; return true;
@ -171,9 +168,6 @@ public abstract class AbstractJackson2HttpMessageConverter extends AbstractGener
if (!canWrite(mediaType)) { if (!canWrite(mediaType)) {
return false; return false;
} }
if (!logger.isWarnEnabled()) {
return this.objectMapper.canSerialize(clazz);
}
AtomicReference<Throwable> causeRef = new AtomicReference<Throwable>(); AtomicReference<Throwable> causeRef = new AtomicReference<Throwable>();
if (this.objectMapper.canSerialize(clazz, causeRef)) { if (this.objectMapper.canSerialize(clazz, causeRef)) {
return true; return true;

Loading…
Cancel
Save