From 72ac946c5254d1293683bbb3b6fe3890fa12aa6e Mon Sep 17 00:00:00 2001 From: Oleg Zhurakousky Date: Thu, 16 Jul 2020 17:45:55 +0200 Subject: [PATCH] Disable NegotiatingMessageConverter --- ...ntextFunctionCatalogAutoConfiguration.java | 24 ++++++++++++------- ...BeanFactoryAwareFunctionRegistryTests.java | 2 ++ 2 files changed, 17 insertions(+), 9 deletions(-) diff --git a/spring-cloud-function-context/src/main/java/org/springframework/cloud/function/context/config/ContextFunctionCatalogAutoConfiguration.java b/spring-cloud-function-context/src/main/java/org/springframework/cloud/function/context/config/ContextFunctionCatalogAutoConfiguration.java index 2f4f31043..97c8d6a19 100644 --- a/spring-cloud-function-context/src/main/java/org/springframework/cloud/function/context/config/ContextFunctionCatalogAutoConfiguration.java +++ b/spring-cloud-function-context/src/main/java/org/springframework/cloud/function/context/config/ContextFunctionCatalogAutoConfiguration.java @@ -47,7 +47,6 @@ import org.springframework.context.annotation.Configuration; import org.springframework.context.annotation.FilterType; import org.springframework.core.convert.converter.GenericConverter; import org.springframework.core.convert.support.ConfigurableConversionService; -import org.springframework.messaging.converter.AbstractMessageConverter; import org.springframework.messaging.converter.ByteArrayMessageConverter; import org.springframework.messaging.converter.CompositeMessageConverter; import org.springframework.messaging.converter.MessageConverter; @@ -93,17 +92,24 @@ public class ContextFunctionCatalogAutoConfiguration { } } +// mcList = mcList.stream() +// .filter(c -> isConverterEligible(c)) +// .map(converter -> { +// return converter instanceof AbstractMessageConverter +// ? NegotiatingMessageConverterWrapper.wrap((AbstractMessageConverter) converter) +// : converter; +// }) +// .collect(Collectors.toList()); +// mcList.add(NegotiatingMessageConverterWrapper.wrap(new JsonMessageConverter(jsonMapper))); +// mcList.add(NegotiatingMessageConverterWrapper.wrap(new ByteArrayMessageConverter())); +// mcList.add(NegotiatingMessageConverterWrapper.wrap(new StringMessageConverter())); + mcList = mcList.stream() .filter(c -> isConverterEligible(c)) - .map(converter -> { - return converter instanceof AbstractMessageConverter - ? NegotiatingMessageConverterWrapper.wrap((AbstractMessageConverter) converter) - : converter; - }) .collect(Collectors.toList()); - mcList.add(NegotiatingMessageConverterWrapper.wrap(new JsonMessageConverter(jsonMapper))); - mcList.add(NegotiatingMessageConverterWrapper.wrap(new ByteArrayMessageConverter())); - mcList.add(NegotiatingMessageConverterWrapper.wrap(new StringMessageConverter())); + mcList.add(new JsonMessageConverter(jsonMapper)); + mcList.add(new ByteArrayMessageConverter()); + mcList.add(new StringMessageConverter()); if (!CollectionUtils.isEmpty(mcList)) { messageConverter = new CompositeMessageConverter(mcList); diff --git a/spring-cloud-function-context/src/test/java/org/springframework/cloud/function/context/catalog/BeanFactoryAwareFunctionRegistryTests.java b/spring-cloud-function-context/src/test/java/org/springframework/cloud/function/context/catalog/BeanFactoryAwareFunctionRegistryTests.java index 0e84a0975..23c1f7cd4 100644 --- a/spring-cloud-function-context/src/test/java/org/springframework/cloud/function/context/catalog/BeanFactoryAwareFunctionRegistryTests.java +++ b/spring-cloud-function-context/src/test/java/org/springframework/cloud/function/context/catalog/BeanFactoryAwareFunctionRegistryTests.java @@ -391,6 +391,7 @@ public class BeanFactoryAwareFunctionRegistryTests { } @Test + @Ignore public void testMultipleOrderedAcceptValuesMessageOutput() throws Exception { FunctionCatalog catalog = this.configureCatalog(MultipleOrderedAcceptValuesAsMessageOutputConfiguration.class); Function> function = catalog.lookup( @@ -403,6 +404,7 @@ public class BeanFactoryAwareFunctionRegistryTests { @SuppressWarnings("unchecked") @Test + @Ignore public void testSerializationWithCompatibleWildcardSubtypeAcceptHeader() { FunctionCatalog catalog = this.configureCatalog(NegotiatingMessageConverterConfiguration.class); FunctionInvocationWrapper function = catalog.lookup("echo", "text/*");