2

2.12.1-SNAPSHOT の RabbitMQComponent リリースを使用してキャメルをルーティングしようとしました。そうすることで、簡単に消費できるようになりましたが、別のキューにルーティングするときに広告の問題が発生します。

CamelContext context = new DefaultCamelContext();

context.addComponent("rabbit-mq", factoryComponent());

from("rabbit-mq://localhost/test.exchange&queue=test.queue&username=guest&password=guest&autoDelete=false&durable=true")
.log("${in.body}")
.to("rabbit-mq://localhost/out.queue&routingKey=out.queue&durable=true&autoAck=false&autoDelete=false&username=guest&password=guest")
。終わり();

これで、指定された交換が適切なルーティング キーで構成されていることを確認しました。大量に消費することはできますが、out.queue に生成することはできません。

以下は、メッセージを処理する RabbitMQProducer への唯一の参照です。

09:10:28,119 DEBUG RabbitMQProducer[main]: - プロデューサーの開始: Producer[rabbit-mq://localhost/out.queue?autoAck=false&autoDelete=false&durable=true&password=xxxxxx&routingKey=out.queue&username=guest]
09:10:48,238 DEBUG RabbitMQProducer[Camel (camel-1) thread #11 - ShutdownTask]: - プロデューサーの停止: Producer[rabbit-mq://localhost/out.queue?autoAck=false&autoDelete=false&durable=true&password=xxxxxx&routingKey=out .queue&username=ゲスト]

私は、RabbitMQ コンポーネントの Camel 単体テストを調べるのに時間を費やしましたが、非常に価値のある用途は見当たりませんでした。これを機能させることができた人はいますか?

ありがとう。

4

3 に答える 3

0

私は春のDSLを使ってそれをしました。私が使用したURLはこちらです。java dsl にポート番号は必要ないのですか?

rabbitmq://localhost:5672/subscribeExchange?queue=subscribeQueue&durable=true&username=guest&password=guest&routingKey=subscribe

于 2013-09-17T08:21:08.680 に答える