diff --git a/functions/function/http-request-function/src/main/java/org/springframework/cloud/fn/http/request/HttpRequestFunctionConfiguration.java b/functions/function/http-request-function/src/main/java/org/springframework/cloud/fn/http/request/HttpRequestFunctionConfiguration.java index f550434e..fc307d14 100644 --- a/functions/function/http-request-function/src/main/java/org/springframework/cloud/fn/http/request/HttpRequestFunctionConfiguration.java +++ b/functions/function/http-request-function/src/main/java/org/springframework/cloud/fn/http/request/HttpRequestFunctionConfiguration.java @@ -25,14 +25,17 @@ import reactor.core.publisher.Flux; import org.springframework.boot.context.properties.EnableConfigurationProperties; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; +import org.springframework.core.convert.converter.Converter; import org.springframework.http.HttpHeaders; import org.springframework.http.HttpMethod; import org.springframework.http.ResponseEntity; +import org.springframework.integration.config.IntegrationConverter; import org.springframework.messaging.Message; import org.springframework.web.reactive.function.client.WebClient; import org.springframework.web.util.DefaultUriBuilderFactory; import org.springframework.web.util.UriBuilderFactory; + /** * Configuration for a {@link Function} that makes HTTP requests to a resource and for * each request, returns a {@link ResponseEntity}. @@ -50,6 +53,12 @@ public class HttpRequestFunctionConfiguration { return new HttpRequestFunction(webClientBuilder.build(), properties); } + @Bean + @IntegrationConverter + public Converter httpMethodConverter() { + return new HttpMethodConverter(); + } + /** * Function that accepts a {@code Flux>} containing body and headers and * returns a {@code Flux>}. @@ -109,4 +118,11 @@ public class HttpRequestFunctionConfiguration { } + public static class HttpMethodConverter implements Converter { + + @Override + public HttpMethod convert(String source) { + return HttpMethod.valueOf(source); + } + } }