2017-03-07 48 views
0

我一个应用多个过滤器到apache骆驼的同一个终点。 我已经尝试过这样但它不正确。如何配置多个过滤器到一个终点

<camel:endpoint id="inputpath" uri="file:///${sourcefolder}/XYZ/?move=.success&amp;moveFailed=.Error;recursive=true&amp;filter=#ghFilter;filter=#myAntFilter" /> 

它似乎不是正确的方式,因为我得到了异常。 请建议如何在同一端点使用多个过滤器。

+0

首先,你有什么异常?那么我建议你将过滤器组合成一个单独的bean,而不是尝试应用两个不同的过滤器。你想达到什么目的? – noMad17

回答

1

不是很确定您的需求,但我认为多播(http://camel.apache.org/multicast.html)可以有所帮助。

一个例子

<route> 
     <from uri="activemq:test123" /> 
     <multicast parallelProcessing="true"> 
      <filter> 
       <method ref="camelBean" method="match1" /> 
       <to uri="activemq:QUEUE1" /> 
      </filter> 
      <filter> 
       <method ref="camelBean" method="match2" /> 
       <to uri="activemq:QUEUE2" /> 
      </filter> 
    </route> 
0

不能有多个过滤器。只支持一个过滤器。但是你可以从你的过滤器java代码中自行进行多重过滤。