2016-11-16 139 views
0

我正在瀏覽一些關於Apache Camel的文檔,但無法理解setHeader()在Apache Camel中的作用。它是否向from中指定的文件添加標題。並且還建議一些鏈接,我可以在Apache Camel上獲得教程。setHeader()如何在Apache駱駝中工作

回答

2

setHeader消耗的文件(消息)(from)不會將標頭設置爲文件。

Camel File2檢查消息頭。這列出了支持產生(到)和消耗(從)File端點的所有消息頭。對於消耗的文件,您可以訪問消息中支持的((getHeader))標頭。但是覆蓋這些值不會覆蓋文件的元數據。

Apache Camel中的頭和屬性可以互換使用,以在單個route中的進程之間傳遞值,但是當您想要跨越不同路由時,行爲會有所不同。基本上,端點可能在端點丟失,因爲它們通常表示某些組件特定的事物。仔細閱讀文檔以進一步瞭解。駱駝

最好的教程 - Apache Camel BooksApache Cammel Documentation

3

不,它不將文件添加任何東西。 .setHeader()創建一個存在於當前路由中的頭部。您可以創建一個標頭,如.setHeader("myHeader", "myHeaderValue")。通過.getHeader("myHeader")使用標題訪問您的路線期間的動態屬性更持久的財產使用交換屬性。

0

請記住,在你的駱駝與Exchange對象的工作和對象有頭,性能,body.in,body.out等

所以,當你寫from(「file:...」)內容的文件將被推杆到您的Exchange的body.in,然後你可以得到例如在處理器使用exchange.getIn().getBody()文件的內容。

頭是您的Exchange的一部分,所以,當你寫:exchange.setHeader(「headerExample」,」MyHeader」),這將增加現有交易所的報頭的頭部。