当路由被处理时,Camel不会在多播内部传播异常

时间:2016-10-27 09:57:12

标签: apache-camel

我有一个用例,我必须将输入多播到多个路由。 我是通过使用apache camel的多播组件来实现的。 如果有任何异常我使用Exception子句处理它。 我还通过将其标记为如下所示标记了不处理错误的路由

<camel:route errorHandlerRef="noErrorHandler">
        <camel:from uri="direct://SequenceFlow_5"/>
        <camel:transacted ref="sapdatastoretransacted"/>
        <camel:setBody id="CallActivity_3_1477551532659">
            <camel:simple>${in.body}+2</camel:simple>
        </camel:setBody>
        <camel:setHeader headerName="Branch B" id="CallActivity_10_1477551532662">
            <camel:constant>236</camel:constant>
        </camel:setHeader>
        <camel:log message="End of multicast branch encountered" loggingLevel="INFO" id="EndEvent_1_1477551532665"/>
    </camel:route>

当路线标记为&#34; noErrorHandler&#34;路由中的任何错误都会被抛回给调用者。 在我的用例中,当路由是非事务性时,这非常有效。 但是当路由是事务性的时,在多播的情况下不会向调用者抛出错误。

我想要实现的是处理由多播创建的子路由中的错误,并处理来自调用多播的路由的错误。

0 个答案:

没有答案