首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何处理camel工程中蓝图路由异常

如何处理camel工程中蓝图路由异常
EN

Stack Overflow用户
提问于 2019-07-10 19:02:21
回答 1查看 267关注 0票数 0

我正在使用JbossFuse进行camel项目。这里我使用的是blueprint。现在我想要的是,当任何路由中出现任何异常时,将由某个处理器处理,并向客户端返回有效的响应。

EN

回答 1

Stack Overflow用户

发布于 2019-07-10 19:15:28

您可以使用try catch和process处理对客户机的最终响应来覆盖blueprint文件中的任何路由。逻辑大概是这样的:

代码语言:javascript
复制
<route id="route_1">
    <from id="_from_1" uri="direct:processDemo1"/>
    <doTry id="_doTryDemo1">
        <process id="_process_processDemo1" ref="processorBean"/>
        <doCatch id="_doCatchDemo1">
            <exception>java.lang.Exception</exception>
            <to id="_handleExceptionDemo1" uri="direct:HandleException_demo1"/>
        </doCatch>
        <doFinally id="_doFinallyDemo1">
            <log id="_log_Demo1Process_finally" message="Demo1 operation completed"/>
        </doFinally>
    </doTry>
</route>

这里,processorBean是处理Demo1路由的Bean类,uri="direct:HandleException_demo1"是另一个路由,如果Demo1路由中出现异常,就会调用它。因此,此路由的异常路由将为

代码语言:javascript
复制
<route id="routeDemo1Exception">
    <from id="_fromdemo1Exception" uri="direct:HandleException_demo1"/>
    <log id="log_demo1Exception" message="Demo1 Exception called"/>
    <process id="_process_exception_Demo1" ref="processDemo1ExceptionBean"/>
</route>
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56969310

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档