Camel Настроить Redelivery Police во время выполнения

Мне нужно изменить политику повторной доставки исключений во время выполнения. Я добавил howtio в свой проект, но это позволяет мне изменять только политику errorHandler, а не onEception.

образец кода

    onException (IOException.class)
            .maximumRedeliveries (3).maximumRedeliveryDelay (1000)
            .bean (IoExcpetionRouterBean.class);

person zinger128    schedule 12.01.2020    source источник


Ответы (1)


Мне удалось изменить политику повторной доставки OnException, создав bean-компонент RedeliveryPolicyDefinition и изменив

onException (Throwable.class) .bean (* RoutingSlip.class, «скольжение»). setRedeliveryPolicy (redeliveryPolicyDefinition);

всякий раз, когда я меняю объект redeliveryPolicyDefinition, он влияет на выполнение

Я считаю это обходным решением в соответствии с @Claus Ibsen, что это может быть сделано с помощью JMX, но я не мог с JMX, я мог только изменять обработчики ошибок конфигурации, а не маршрутизировать onException

person zinger128    schedule 14.01.2020