Spring Integration - POST call - как мне справиться с таймаутом - PullRequest
0 голосов
/ 22 октября 2019

Что у меня есть:

Мой поток кода выглядит следующим образом:

(1) Создайте запрос (2) POST to URL (3) Записать результаты в выводкаталог

  @Bean
    public IntegrationFlow validateRequest() {
        return IntegrationFlows.from("REQUEST_CHANNEL")
                .channel(c -> c.executor(new SimpleAsyncTaskExecutor()))
                .handle(requestModifier, "constructRequest")
                .handle(Http.outboundGateway("POST_URL", restTemplate)
                        .httpMethod(HttpMethod.POST)
                        .mappedRequestHeaders("ab*", "TraceabilityID", authenticator.getToken())
                        .charset("UTF-8")
                        .expectedResponseType(Response.class))
                .handle(outputWriter, "writeToDir");
        }

ЧТО МНЕ НУЖНО: Время ожидания для POST_URL составляет 20000 мс. Мой код пытается написать ответ, прежде чем он получит тайм-аут и дает исключение нулевого указателя. Какой из перечисленных ниже подходов мне следует использовать?

-> Add wait() to Http.outboundGateway so that the thread waits for atleast 20 s for a response.

-> Make the whole thread sleep for 20 sec. Can you please give me an example for this?
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...