es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Tag: SPRING-WEBCLIENT

Formas de manejar excepciones como WebClientRequestException debido a la indisponibilidad del servicio para todas las llamadas desde una instancia de WebClient en lugar de manera individual.

Como sugiere el título, estoy utilizando Spring WebClient para invocar una API externa y procesar la respuesta. He agregado una función de filtro de intercambio (ExchangeFilterFunction) para manejar la respuesta basada en el código de estado devuelto por el servidor, algo así como lo siguiente. ExchangeFilterFunction responseProcessor() { return ExchangeFilterFunction.ofResponseProcessor(response . . . Read more

Cambio de modo de codificación condicional en el cliente web.

He creado el bean WebClient de la siguiente manera: @Bean public WebClient webClient(final HttpClient httpClient) { return WebClient .builder() .codecs(configurer -> configurer.defaultCodecs().maxInMemorySize(codecInmemoryMaxSize)) .clientConnector(new ReactorClientHttpConnector(httpClient)) .build(); } Estoy reutilizando el mismo bean para hacer llamadas HTTP como: public Mono<responsemodel> get(final String url) { return webClient.get().uri(url) .exchangeToMono(clientResponse -> clientResponse.toEntity(String.class) .map(responseEntity -> new . . . Read more

No se puede deserializar el valor del tipo `[Ljava.lang.Object;` a partir del valor de objeto (token `JsonToken.START_OBJECT`); se produjo una MismatchedInputException.

Obteniendo el error: “Se produjo un error al llamar a la API de eventos de activos de Ariva: Error de decodificación JSON: No se puede deserializar el valor de tipo [Ljava.lang.Object; a partir del valor de objeto (token JsonToken.START_OBJECT); la excepción anidada es com.fasterxml.jackson.databind.exc.MismatchedInputException: No se puede deserializar el valor . . . Read more

Cómo convertir una respuesta de Spring WebClient en una ResponseEntity?

Soy capaz de devolver ResponseEntity utilizando el método toEntity() de la siguiente manera: @GetMapping(“/uri”) public Mono<><data[]>> methodName() { return webClient .get() .uri(“http://localhost:8088/externalService”) .accept(MediaType.APPLICATION_JSON) .retrieve() .toEntity(Data[].class); } Pero quiero procesar los encabezados de respuesta antes de devolverlo. El código anterior convierte la respuesta de WebClient en ResponseEntity y la devuelve inmediatamente, . . . Read more