diff --git a/spring-cloud-function-context/src/main/java/org/springframework/cloud/function/context/catalog/SimpleFunctionRegistry.java b/spring-cloud-function-context/src/main/java/org/springframework/cloud/function/context/catalog/SimpleFunctionRegistry.java index ecf25b11a..e38c27b67 100644 --- a/spring-cloud-function-context/src/main/java/org/springframework/cloud/function/context/catalog/SimpleFunctionRegistry.java +++ b/spring-cloud-function-context/src/main/java/org/springframework/cloud/function/context/catalog/SimpleFunctionRegistry.java @@ -853,9 +853,8 @@ public class SimpleFunctionRegistry implements FunctionRegistry, FunctionInspect : new OriginalMessageHolder(((Message) input).getPayload(), (Message) input); } else if (input instanceof Message) { - if (((Message) input).getPayload().getClass().getName().equals("org.springframework.kafka.support.KafkaNull") - && !this.isInputTypeMessage()) { //TODO rework - return ((Message) input).getPayload(); + if (((Message) input).getPayload().getClass().getName().equals("org.springframework.kafka.support.KafkaNull")) { + return FunctionTypeUtils.isMessage(type) ? input : null; } if (functionInvocationHelper != null) {