diff --git a/spring-cloud-function-context/src/main/java/org/springframework/cloud/function/context/catalog/BeanFactoryAwareFunctionRegistry.java b/spring-cloud-function-context/src/main/java/org/springframework/cloud/function/context/catalog/BeanFactoryAwareFunctionRegistry.java index 24f1b42d5..e285e0745 100644 --- a/spring-cloud-function-context/src/main/java/org/springframework/cloud/function/context/catalog/BeanFactoryAwareFunctionRegistry.java +++ b/spring-cloud-function-context/src/main/java/org/springframework/cloud/function/context/catalog/BeanFactoryAwareFunctionRegistry.java @@ -120,6 +120,7 @@ public class BeanFactoryAwareFunctionRegistry this.applicationContext.getBeanNamesForType(Consumer.class).length; } + @Override @SuppressWarnings("unchecked") public T lookup(String definition, String... acceptedOutputTypes) { Object function = this.proxyInvokerIfNecessary((FunctionInvocationWrapper) this.compose(null, definition, acceptedOutputTypes)); @@ -625,7 +626,7 @@ public class BeanFactoryAwareFunctionRegistry .filter(v -> v != null) .findFirst().orElse(null); } - return convertedValue; + return convertedValue != null ? convertedValue : value; }