diff --git a/spring-cloud-function-gateway/pom.xml b/spring-cloud-function-gateway/pom.xml
index 45f20ade0..c412ec863 100644
--- a/spring-cloud-function-gateway/pom.xml
+++ b/spring-cloud-function-gateway/pom.xml
@@ -6,7 +6,7 @@
spring-cloud-function-gateway
jar
spring-cloud-function-gateway
- Spring Cloud Function Web Support
+ Spring Cloud Function Gateway Support
org.springframework.cloud
@@ -14,10 +14,6 @@
1.0.0.BUILD-SNAPSHOT
-
- 1.0.0.BUILD-SNAPSHOT
-
-
org.springframework.boot
diff --git a/spring-cloud-function-gateway/src/main/java/org/springframework/cloud/function/gateway/ProxyExchange.java b/spring-cloud-function-gateway/src/main/java/org/springframework/cloud/function/gateway/ProxyExchange.java
index a132706df..7c9cb8823 100644
--- a/spring-cloud-function-gateway/src/main/java/org/springframework/cloud/function/gateway/ProxyExchange.java
+++ b/spring-cloud-function-gateway/src/main/java/org/springframework/cloud/function/gateway/ProxyExchange.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2012-2015 the original author or authors.
+ * Copyright 2016-2017 the original author or authors.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/spring-cloud-function-gateway/src/main/java/org/springframework/cloud/function/gateway/config/ProxyResponseAutoConfiguration.java b/spring-cloud-function-gateway/src/main/java/org/springframework/cloud/function/gateway/config/ProxyResponseAutoConfiguration.java
index 2e3c7f477..c02c68e93 100644
--- a/spring-cloud-function-gateway/src/main/java/org/springframework/cloud/function/gateway/config/ProxyResponseAutoConfiguration.java
+++ b/spring-cloud-function-gateway/src/main/java/org/springframework/cloud/function/gateway/config/ProxyResponseAutoConfiguration.java
@@ -18,6 +18,7 @@ package org.springframework.cloud.function.gateway.config;
import java.io.IOException;
import java.util.List;
+import java.util.Optional;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.autoconfigure.condition.ConditionalOnClass;
@@ -49,39 +50,40 @@ import org.springframework.web.servlet.config.annotation.WebMvcConfigurerAdapter
@EnableConfigurationProperties(ProxyProperties.class)
public class ProxyResponseAutoConfiguration extends WebMvcConfigurerAdapter {
- @Autowired
- private ApplicationContext context;
+ @Autowired
+ private ApplicationContext context;
- @Bean
- @ConditionalOnMissingBean
- public ProxyExchangeArgumentResolver proxyExchangeBuilderArgumentResolver(
- RestTemplateBuilder builder, ProxyProperties proxy) {
- RestTemplate template = builder.build();
- template.setErrorHandler(new NoOpResponseErrorHandler());
- template.getMessageConverters().add(new ByteArrayHttpMessageConverter() {
- @Override
- public boolean supports(Class> clazz) {
- return true;
- }
- });
- ProxyExchangeArgumentResolver resolver = new ProxyExchangeArgumentResolver(
- template);
- resolver.setHeaders(proxy.convertHeaders());
- resolver.setSensitive(proxy.getSensitive()); // can be null
- return resolver;
- }
+ @Bean
+ @ConditionalOnMissingBean
+ public ProxyExchangeArgumentResolver proxyExchangeBuilderArgumentResolver(
+ Optional optional, ProxyProperties proxy) {
+ RestTemplateBuilder builder = optional.orElse(new RestTemplateBuilder());
+ RestTemplate template = builder.build();
+ template.setErrorHandler(new NoOpResponseErrorHandler());
+ template.getMessageConverters().add(new ByteArrayHttpMessageConverter() {
+ @Override
+ public boolean supports(Class> clazz) {
+ return true;
+ }
+ });
+ ProxyExchangeArgumentResolver resolver = new ProxyExchangeArgumentResolver(
+ template);
+ resolver.setHeaders(proxy.convertHeaders());
+ resolver.setSensitive(proxy.getSensitive()); // can be null
+ return resolver;
+ }
- @Override
- public void addArgumentResolvers(
- List argumentResolvers) {
- argumentResolvers.add(context.getBean(ProxyExchangeArgumentResolver.class));
- }
+ @Override
+ public void addArgumentResolvers(
+ List argumentResolvers) {
+ argumentResolvers.add(context.getBean(ProxyExchangeArgumentResolver.class));
+ }
- private static class NoOpResponseErrorHandler extends DefaultResponseErrorHandler {
+ private static class NoOpResponseErrorHandler extends DefaultResponseErrorHandler {
- @Override
- public void handleError(ClientHttpResponse response) throws IOException {
- }
+ @Override
+ public void handleError(ClientHttpResponse response) throws IOException {
+ }
- }
+ }
}