2

TCP から TCP へのルートを示す簡単なデモを ActiveMQ で開始しようとしています。activemq.xml 構成ファイルのキャメル コンテキストでエンドポイントとルートをコーディングしています。

<camelContext id="camel" xmlns="http://activemq.apache.org/camel/schema/spring">

    <package>org.myorg.codec</package>

    <endpoint id="listener_A" uri="mina:tcp://localhost:42000?sync=false&amp;textline=true"/>
    <endpoint id="listener_B" uri="mina:tcp://localhost:42001?sync=false&amp;textline=true"/>

    <route>
        <from uri="activemq:listener_A"/>
        <to uri="activemq:listener_B"/>
    </route>
    <route>
        <from uri="activemq:listener_B"/>
        <to uri="activemq:listener_A"/>
    </route>
</camelContext>

なぜこれがうまくいかないのですか?

AMQ サーバーがリッスン ポートを開いていないようです。

編集: ここでの目的は、単純なデモンストレーションとして、2 つの telnet ターミナル (A と B) を使用して ActiveMQ に接続し、メッセージ キュー サーバーを介して一方から他方へメッセージをルーティングできるようにすることです。後で、コンテンツに基づいてフィルタリングまたはルーティングを試みる場合があります。

4

2 に答える 2

1

私はあなたの設定ファイルに少し混乱しています。正確に何をしようとしていますか?

MINAを使用するための2つのエンドポイントを定義しました(ActiveMQをまったく使用しません)。次に、ActievMQキューlistener_Aからlistener_B、次にlistener_Bからlistener_A(再帰ループ)へのルートを使用しています。

たぶん、あなたがやりたいことを説明し始めれば、XMLがどのように見えるべきかを理解することができます。

ちなみに、定義したエンドポイントを参照するだけの場合は、 uri="..."ではなくref="name"属性を使用してください。

例えば

<route>
  <from ref="listener_A"/>
  <to ref="listener_B"/>
</route>

言われていることすべて-あなたはCamelユーザーフォーラムを介してCamelでより良くそしてより速いサポートを得る傾向があります

于 2008-11-05T15:45:36.227 に答える
0

詳細:

エンドポイントがmina tcp接続として定義されている場合、「activemq::listener_A」として識別できません

<endpoint id="listener_A" uri="mina:tcp://localhost:42000?sync=false&amp;textline=true"/>   

これは間違っています:

  <from uri="activemq:listener_A"/>  

これは機能します:

  <from ref="listener_A"/>  

これもそうです:

  <from ref="mina:tcp://localhost:42000?sync=false&amp;textline=true"/>
于 2008-11-06T23:01:01.293 に答える