2016-05-31 8 views
0

Apache Camelについての簡単な質問。 次のシナリオでは、私のサーバーがjmsメッセージを受信し、csvファイルに変換してからDBを挿入します。この目的のために 私は2つの豆持っている:Apache Camelルーティング

  • xml2csvを
  • insertDB

私はのようなルーティングを使用: "ルート" から-へのファイルは、それが

<route id="route1" errorHandlerRef="myErrorHandler"> 
     <from uri="file://{someFolder1}} 
      ?... 
     <to uri="bean:xml2csv" /> 
     <log message="transformed to xml file" /> 
    </route> 

    <route id="route2" errorHandlerRef="myErrorHandler"> 
     <from uri="file://{{someFolder2}} 
      ?... 
     <to uri="direct:csvOnboardingChannel" /> 
    </route> 

    <route id="csvOnboarding" errorHandlerRef="myErrorHandler"> 
     <from uri="direct:csvOnboardingChannel" /> 
     <to uri="bean:insertDB" /> 
    </route> 

ときメッセージのように動く?または違う質問をすると、Apache Camelはファイルを取り出してメッセージとしてラップし、Beanまたはコンポーネントにルーティングしますか?

私はそれが正しいことを理解しているか、間違った指示をしていますか?

答えて

0

はい、ご理解いただけます。 Camelはファイルのデータを読み込み、それをBeanへのルート経由でメッセージとして送信します。次のように単一のルートとして簡単になるかもしれません。

<route id="route1" errorHandlerRef="myErrorHandler"> 
    <from uri="file://{someFolder1}}"> 
     <to uri="bean:xml2csv" /> 
     <to uri="bean:insertDB" /> 
</route> 
+0

ありがとうございます。 – brakebg