0

ルート内でアグリゲーターも含む onException 句を使用しようとしています。アグリゲーターの aggregate() メソッド内で例外がスローされるたびに、OnException 句がそれをキャッチして処理し、再配信する必要があると予想していました。しかし、それは起こっていないようです。誰でも私が間違っているところを提案してもらえますか?

from("jms:queue:start?concurrentConsumers=10").routeId("testRoute")
        .onException(Exception.class).log("Exception caught").process(new Processor() {

            @Override
            public void process(Exchange exchange) throws Exception {
                logger.debug("****Exception caught***");

            }
        })
        .handled(true).maximumRedeliveries(-1).end()
        .transacted()
        .aggregate(header("correlationHeader"), new CustomAggregator())
        .completionSize(50).
    to("jms:queue:end");

ここで、CustomAggregator はアグリゲーターであり、その集計メソッド内で例外処理をテストするために例外をスローしています。

任意のヘルプや提案をいただければ幸いです。

4

0 に答える 0