fix JsonMessageConverter mimetype NPE
This commit is contained in:
@@ -78,7 +78,7 @@ public class JsonMessageConverter extends AbstractMessageConverter {
|
|||||||
private boolean canDiscoverConvertToType(Message<?> message, Class<?> targetClass) {
|
private boolean canDiscoverConvertToType(Message<?> message, Class<?> targetClass) {
|
||||||
if (targetClass == null || targetClass == Object.class) {
|
if (targetClass == null || targetClass == Object.class) {
|
||||||
MimeType mimeType = getMimeType(message.getHeaders());
|
MimeType mimeType = getMimeType(message.getHeaders());
|
||||||
if (StringUtils.hasText(mimeType.getParameter("type"))) {
|
if (mimeType != null && StringUtils.hasText(mimeType.getParameter("type"))) {
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
return false;
|
return false;
|
||||||
|
|||||||
@@ -40,6 +40,8 @@ public class JsonMessageConverterTests {
|
|||||||
|
|
||||||
Message<String> message = MessageBuilder.withPayload("{\"name\":\"bill\"}").build();
|
Message<String> message = MessageBuilder.withPayload("{\"name\":\"bill\"}").build();
|
||||||
assertThat(converter.canConvertFrom(message, Person.class)).isTrue();
|
assertThat(converter.canConvertFrom(message, Person.class)).isTrue();
|
||||||
|
assertThat(converter.canConvertFrom(message, Object.class)).isFalse();
|
||||||
|
assertThat(converter.canConvertFrom(message, null)).isFalse();
|
||||||
|
|
||||||
message = MessageBuilder.withPayload("{\"name\":\"bill\"}").setHeader(MessageHeaders.CONTENT_TYPE, MimeTypeUtils.APPLICATION_JSON).build();
|
message = MessageBuilder.withPayload("{\"name\":\"bill\"}").setHeader(MessageHeaders.CONTENT_TYPE, MimeTypeUtils.APPLICATION_JSON).build();
|
||||||
assertThat(converter.canConvertFrom(message, Person.class)).isTrue();
|
assertThat(converter.canConvertFrom(message, Person.class)).isTrue();
|
||||||
|
|||||||
Reference in New Issue
Block a user