KAFKA GH-223: Handle unexpected content type
See https://github.com/spring-cloud/spring-cloud-stream-binder-kafka/issues/223 When using native encoding; NPE when no class name derived from the content type. Do not attempt deserialization if `JavaClassMimeTypeUtils.classNameFromMimeType(contentType)` returns `null`. Test case in the Kafka binder.
This commit is contained in:
committed by
Artem Bilan
parent
e2c214b34e
commit
cce69a6bd8
@@ -147,6 +147,9 @@ public abstract class MessageSerializationUtils {
|
|||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
String className = JavaClassMimeTypeUtils.classNameFromMimeType(contentType);
|
String className = JavaClassMimeTypeUtils.classNameFromMimeType(contentType);
|
||||||
|
if (className == null) {
|
||||||
|
return bytes;
|
||||||
|
}
|
||||||
try {
|
try {
|
||||||
// Cache types to avoid unnecessary ClassUtils.forName calls.
|
// Cache types to avoid unnecessary ClassUtils.forName calls.
|
||||||
Class<?> targetType = payloadTypeCache.get(className);
|
Class<?> targetType = payloadTypeCache.get(className);
|
||||||
|
|||||||
Reference in New Issue
Block a user