private ExchangeFilterFunction http4XxErrorExchangeFilterFunction() {
		return ExchangeFilterFunction.ofResponseProcessor(clientResponse -> {
			// literally 400 pass the tests, not 4xxClientError
			if (clientResponse.statusCode().value() == 400) {
				ClientResponse newResponse = clientResponse.mutate().statusCode(HttpStatus.OK).build();
				newResponse.body((clientHttpResponse, context) -> clientHttpResponse.getBody());
				return Mono.just(newResponse);
			}
			if (clientResponse.statusCode().equals(HttpStatus.NOT_FOUND)) {
				ClientResponse newResponse = clientResponse.mutate()
					.statusCode(clientResponse.statusCode())
					// ignore body on 404 for heartbeat, see gh-4145
					.body(Flux.empty())
					.build();
				return Mono.just(newResponse);
			}
			return Mono.just(clientResponse);
		});
	}
Provides the custom {@link WebClient.Builder} required by the
{@link WebClientEurekaHttpClient}. Relies on Jackson for serialization and
deserialization.

@author Daniel Lavoie
@author Haytham Mohamed
@author Armin Krezovic
@author Wonchul Heo
spring-cloud-netflix-eureka-client/src/main/java/org/springframework/cloud/netflix/eureka/http/WebClientTransportClientFactory.java