1
我在同一個文件位置有兩個文件.....我希望兩個文件同時被拾取,這樣我就可以同時在我的處理器中獲得兩個文件...我們如何在Apache Camel的單個路由中選擇2個文件,並同時處理它們?
我使用Apache Camel進行路由。
我在同一個文件位置有兩個文件.....我希望兩個文件同時被拾取,這樣我就可以同時在我的處理器中獲得兩個文件...我們如何在Apache Camel的單個路由中選擇2個文件,並同時處理它們?
我使用Apache Camel進行路由。
您的問題的解決方案取決於很多情況。
如果您可以預測文件名,您可以很容易地使用pollEnrich和aggregation strategy。
的聚合策略爲您提供了這樣的
Exchange aggregate(Exchange oldExchange,Exchange newExchange)
的方法,這樣你就可以決定如何處理這兩個文件。 oldExchange
是原始交易所,newExchange
將是來自豐富URI的交換。
僞代碼示例:
from("file:inbox?fileName=invoices.csv")
.pollEnrich("file:inbox2?fileName=customers.xml" strategyRef="myAggregationStrategy")
.bean(someTransformerBean)
.to("file:outbox?fileName=report.xml");