0

我的骆驼路线配置如下:

<route id="text-file-route">
                        <from 
                                uri="file:files/merchant?antInclude={{include-file-type}}&amp;initialDelay=1000&amp;delay=1000&amp;move=${file:name.noext}.processed" />
                        <split streaming="true">
                                <tokenize token="\n" />
                                <process ref="splitBatchAdapterProcessor" />
                                <process ref="merchantStreamProcessor" />
                                <process ref="merchantTableProcessor" />
                                <to uri="mock:dummy" />
                        </split>
                </route>

在当前配置下,即使在处理文件时抛出异常,文件也会被重命名。我想要的是,只有在文件没有抛出异常的情况下才应该重命名文件。

我使用骆驼2.12。

4

1 回答 1

2

您需要打开 shareUnitOfWork 以便拆分器返回异常,以便文件使用者可以回滚。您可以在以下网址阅读更多相关信息:http ://camel.apache.org/splitter

  <split streaming="true" shareUnitOfWork="true">
于 2013-10-28T08:40:03.993 回答