分離された 2 つのシステム間の統合を作成するために Camel を評価しています。項目のリストについて Web サービスを定期的にポーリングし、受信した項目に対していくつかの変換を行い、別のトランスポートを使用して 2 番目のシステムに送信するには、Camel が必要です。
私は次のアプローチを試しました:
<route id="timer">
<from uri="timer://myTimer?period=5000"/>
<to uri="direct:queryWS"/>
</route>
<route id="ws">
<from uri="direct:queryWS"/>
<to uri="log:Querying WS"/>
<process ref="itemRetriever" />
</route>
ここで、itemRetriever は以前にセットアップした Bean で、org.apache.camel.Processor を実装し、Axis を使用して Web サービス呼び出しを行います。ただし、メッセージが 2 番目のルートに到達すると、メッセージ本文が null であるため、Camel は例外をスローします。
外部 Web サービスを定期的にポーリングするより良い方法があるかどうか、または少なくともこのエラーを回避する方法があるかどうか疑問に思っています。