apache camel では、交換プロセッサから別のプロセッサに値を渡すための最良の方法 (およびその理由) は次のとおりです。
- 交換ヘッダーに格納する
setProperty
ルートの構築中にメソッドを使用します。- 別の方法..
apache camel では、交換プロセッサから別のプロセッサに値を渡すための最良の方法 (およびその理由) は次のとおりです。
setProperty
ルートの構築中にメソッドを使用します。Ben と Petter が言及していない違いの 1 つは、Camel でメッセージが処理されている間、プロパティが安全に保存されることです。対照的に、ヘッダーはメッセージ プロトコルの一部であり、ルーティング中に伝播されない場合があります。たとえば、JMS には、ヘッダーなどとして保存できるものに制限があります。
Camel in Action book の無料の第 1 章を読むことをお勧めします。これは、Exchange、Message などの Camel の概念をカバーしているためです。
プロパティとヘッダーはほとんど同じです。ただし、ヘッダーは、Jms などの特定のコンポーネントのプロトコル固有のヘッダーとの間で変換されます。そう、
Exchangeはプロセッサ間で受け渡されます。これには、プロパティ、IN メッセージ、およびオプションの OUT メッセージが含まれます。これらはそれぞれオブジェクト データを格納できますが、一般的には次のとおりです。
とはいえ、実際には、プロセッサに続いて呼び出されるコンポーネントに依存します。ほとんどの場合、エンドポイントなどを使用するために必要なヘッダーや本文の値がいくつかあります。これらの詳細については、特定のコンポーネント ページを参照してください。
また、交換/メッセージについては、次のページで詳しく説明しています。
http://camel.apache.org/maven/current/camel-core/apidocs/org/apache/camel/Exchange.html
http://fusesource.com/docs/router/2.8/prog_guide/MsgFormats-Exchanges.html