fix JsonMessageConverter mimetype NPE

This commit is contained in:
Jeffrey Douangpaseuth
2024-01-30 17:21:53 -05:00
parent db464c103c
commit fb0af94da2
2 changed files with 3 additions and 1 deletions

View File

@@ -78,7 +78,7 @@ public class JsonMessageConverter extends AbstractMessageConverter {
private boolean canDiscoverConvertToType(Message<?> message, Class<?> targetClass) {
if (targetClass == null || targetClass == Object.class) {
MimeType mimeType = getMimeType(message.getHeaders());
if (StringUtils.hasText(mimeType.getParameter("type"))) {
if (mimeType != null && StringUtils.hasText(mimeType.getParameter("type"))) {
return true;
}
return false;

View File

@@ -40,6 +40,8 @@ public class JsonMessageConverterTests {
Message<String> message = MessageBuilder.withPayload("{\"name\":\"bill\"}").build();
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();
assertThat(converter.canConvertFrom(message, Person.class)).isTrue();