Пример маршрут:Camel onException не ломает NoMessageIdException idempotentConsumer?
onException(Exception.class)
.process(new Processor() {
@Override
public void process(Exchange exchange) throws Exception {
System.out.println("it works");
}
})
.handled(true);
from("jetty://http://0.0.0.0:8888/test")
.idempotentConsumer(header("myid"), MemoryIdempotentRepository.memoryIdempotentRepository(1000000))
.skipDuplicate(false)
.filter(property(Exchange.DUPLICATE_MESSAGE).isEqualTo(true))
.throwException(new DuplicateRequestException())
.end();
Отправка запроса к слушателю URL без MyID параметра бросает org.apache.camel.processor.idempotent.NoMessageIdException: Нет идентификатор сообщения не может быть найден с помощью выражения: заголовок (MyID) на сообщении обмен: Exchange [Сообщение: [Тело - экземпляр org.apache.camel.StreamCache]]
без перехода от onException.
Вы говорите, что это не печатая "работает"? –
Да, это не так. –