diff --git a/api-catalog-services/src/main/resources/application.yml b/api-catalog-services/src/main/resources/application.yml index 2b64beadff..444543811f 100644 --- a/api-catalog-services/src/main/resources/application.yml +++ b/api-catalog-services/src/main/resources/application.yml @@ -39,6 +39,7 @@ logging: # New Config org.apache: WARN #org.apache.catalina, org.apache.coyote, org.apache.tomcat + org.apache.tomcat.util.net.SSLUtilBase: ERROR org.eclipse.jetty: WARN org.apache.http.conn.ssl.DefaultHostnameVerifier: DEBUG #logs only SSLException javax.net.ssl: ERROR diff --git a/discovery-service/src/main/resources/application.yml b/discovery-service/src/main/resources/application.yml index ca514eea47..34ad91bd56 100644 --- a/discovery-service/src/main/resources/application.yml +++ b/discovery-service/src/main/resources/application.yml @@ -18,6 +18,7 @@ logging: org.eclipse.jetty: WARN org.apache.http.conn.ssl.DefaultHostnameVerifier: DEBUG #logs only SSLException javax.net.ssl: ERROR + org.apache.tomcat.util.net.SSLUtilBase: ERROR # com.netflix.eureka.resources: WARN apiml: diff --git a/gateway-service/src/main/java/org/zowe/apiml/gateway/config/ConnectionsConfig.java b/gateway-service/src/main/java/org/zowe/apiml/gateway/config/ConnectionsConfig.java index 5467fb212b..0717a4a1e5 100644 --- a/gateway-service/src/main/java/org/zowe/apiml/gateway/config/ConnectionsConfig.java +++ b/gateway-service/src/main/java/org/zowe/apiml/gateway/config/ConnectionsConfig.java @@ -173,18 +173,13 @@ public HttpsFactory factory() { } /** - * This bean processor is used to override bean routingFilter defined at - * org.springframework.cloud.gateway.config.GatewayAutoConfiguration.NettyConfiguration#routingFilter(HttpClient, ObjectProvider, HttpClientProperties) - *
- * There is no simple way how to override this specific bean, but bean processing could handle that.
- *
* @param httpClient default http client
* @param headersFiltersProvider header filter for spring gateway router
* @param properties client HTTP properties
- * @return bean processor to replace NettyRoutingFilter by NettyRoutingFilterApiml
+ * @return instance of NettyRoutingFilterApiml
*/
@Bean
- public BeanPostProcessor routingFilterHandler(HttpClient httpClient, ObjectProvider
+ * There is no simple way how to override this specific bean, but bean processing could handle that.
+ *
+ * @return bean processor to replace NettyRoutingFilter by NettyRoutingFilterApiml
+ */
+ @Bean
+ public static BeanPostProcessor routingFilterHandler(ApplicationContext context) {
return new BeanPostProcessor() {
@Override
public Object postProcessBeforeInitialization(Object bean, String beanName) throws BeansException {
if ("routingFilter".equals(beanName)) {
log.debug("Updating routing bean {}", NettyRoutingFilterApiml.class);
// once is creating original bean by autoconfiguration replace it with custom implementation
- return new NettyRoutingFilterApiml(httpClientNoCert, httpClientClientCert, headersFiltersProvider, properties);
+ return context.getBean(NettyRoutingFilterApiml.class);
}
// do not touch any other bean
return bean;
diff --git a/mock-services/src/main/resources/application.yml b/mock-services/src/main/resources/application.yml
index cdd44ff51a..61df059349 100644
--- a/mock-services/src/main/resources/application.yml
+++ b/mock-services/src/main/resources/application.yml
@@ -1,3 +1,7 @@
+logging:
+ level:
+ ROOT: INFO
+ org.apache.tomcat.util.net.SSLUtilBase: ERROR
spring:
application:
name: Mock services
> headersFiltersProvider, HttpClientProperties properties) {
+ public NettyRoutingFilterApiml createNettyRoutingFilterApiml(HttpClient httpClient, ObjectProvider
> headersFiltersProvider, HttpClientProperties properties) {
// obtain SSL contexts (one with keystore to support client cert sign and truststore, second just with truststore)
SslContext justTruststore = sslContext(false);
SslContext withKeystore = sslContext(true);
@@ -199,13 +194,27 @@ public BeanPostProcessor routingFilterHandler(HttpClient httpClient, ObjectProvi
// construct http clients with different SSL configuration - with / without client certs
var httpClientNoCert = httpClient.secure(builderJustTruststore.build());
var httpClientClientCert = httpClient.secure(builderWithKeystore.build());
+
+ return new NettyRoutingFilterApiml(httpClientNoCert, httpClientClientCert, headersFiltersProvider, properties);
+ }
+
+ /**
+ * This bean processor is used to override bean routingFilter defined at
+ * org.springframework.cloud.gateway.config.GatewayAutoConfiguration.NettyConfiguration#routingFilter(HttpClient, ObjectProvider, HttpClientProperties)
+ *