Camel Spring DSL没有例外

时间:2015-10-14 15:13:45

标签: spring exception apache-camel

我使用Camel路由将csv文件转换为XML,使用Spring DSL。我使用带有注释类的JAXB和.xsd来验证结果。

在路线上,我使用了doTry / doCatch代码块。如果发生任何异常,我将实际消息写入文件。我还使用自定义过程将CSV文件转换为带注释的类的实例。我的问题如下: 例如,如果我更改.xsd文件中的名称,则抛出异常,并在路由中执行doCatch代码段并将消息写入文件。但是如果我的处理器抛出异常,则会忽略doCatch。

             

select left(Address, CHARINDEX(' ', Address)) as Street_Number,
       substring(Address, CHARINDEX(' ', Address)+1, len(Address)-(CHARINDEX(' ', Address)-1)) as Street_Name
from [dbo].XYZ

1 个答案:

答案 0 :(得分:1)

你是不是真的,doCatch被忽略了?它应该捕获你的异常,但你必须告诉camel处理异常。没有这个骆驼就不会抓住它。在<exception></exception>添加

之后
<handled>
    <constant>true</constant>
</handled>