Camel 2.0 から 2.6 にアップグレードしようとしています。
これは私のapplicationContext-camel.xmlファイルにあります...
<camel:route >
<camel:from uri="transactionSaleBuffer" />
<camel:policy ref="routeTransactionPolicy"/>
<camel:transacted ref="transactionManagerETL" />
<camel:to uri="detailFactProcessor" />
</camel:route>
真ん中の 2 行 (ポリシーとトランザクション) を追加すると、例外が発生します...
原因: org.apache.camel.FailedToCreateRouteException: ルート route2 の作成に失敗しました: >>> From[transactionSaleBuffer] <<< ルート内: Route[[From[transactionSaleBuffer]] -> [Transacted[ref:trans..ルート route2 には出力プロセッサがないためです。to("log:foo") などの出力をルートに追加する必要があります。
これは、Camel クラス RouteDefinition.java が ProcessorDefinitionHelper.hasOutputs(outputs, true) を呼び出すためであることがわかります。
これは、1 つのオブジェクトの配列を渡します ([Transacted[ref:transactionManagerETL]])
この 1 つのオブジェクトには 1 つの 2 つの子があります
[Transacted[ref:transactionManagerETL]]
CHILD-[Policy[ref:routeTransactionPolicy],
CHILD-To[detailFactProcessor]
Policy の子には出力がないため、例外がスローされます。
それでも、子を追加する方法がわかりません。上記の XML はスキーマと一致します。
多分私は何か他のものを見逃していますか?
私のセットアップは例と一致します... Apache Camel: Book in One Page (セクションを参照してください: Camel 1.x - JMS サンプル)
誰でも私を助けてください。ありがとう!ジェフ・ポーター