正しく構成された RabbitMQ キューのように見えるもの (dlx 引数を表示) があり、Java リスナー コードでFatalListenerExecutionException
. 何らかの理由で、例外がスローされた後、指定された配信不能キューに何も表示されません。
間違った種類の例外をスローしていますか?
ありがとう。
Spring 構成でのキューのインスタンス化:
Map arguments = new HashMap();
arguments.put("x-dead-letter-exchange", "dlx.queue");
new Queue("some.queue", true, false, false, arguments);
Spring 構成のリスナー コンテナー:
public SimpleMessageListenerContainer
someContainer(){
final SimpleMessageListenerContainer container = new SimpleMessageListenerContainer();
container.setConnectionFactory(connectionFactory);
container.setQueues(createTheQueue());
container.setMessageListener(theListener());
container.setConcurrentConsumers(numberOfConcurrentConsumers);
container.setMaxConcurrentConsumers(maxDefaultConsumers);
container.setDefaultRequeueRejected(false);
return container;
}
RabbitMQ コンソールに表示される「some.queue」のバインディング:
Parameters : x-dead-letter-exchange: dlx.queue