Wie bekomme ich Spring RabbitMQ, um eine neue Warteschlange zu erstellen?

Nach meiner (eingeschränkten) Erfahrung mit rabbit-mq wird die Warteschlange automatisch erstellt, wenn Sie einen neuen Listener für eine noch nicht vorhandene Warteschlange erstellen. Ich versuche, das Spring AMQP-Projekt mit rabbit-mq zu verwenden, um einen Listener einzurichten, und erhalte stattdessen eine Fehlermeldung. Dies ist meine XML-Konfiguration:

<rabbit:connection-factory id="rabbitConnectionFactory" host="172.16.45.1" username="test" password="password" />

<rabbit:listener-container connection-factory="rabbitConnectionFactory"  >
    <rabbit:listener ref="testQueueListener" queue-names="test" />
</rabbit:listener-container>

<bean id="testQueueListener" class="com.levelsbeyond.rabbit.TestQueueListener"> 
</bean>

Ich bekomme das in meinen RabbitMq Logs:

=ERROR REPORT==== 3-May-2013::23:17:24 ===
connection <0.1652.0>, channel 1 - soft error:
{amqp_error,not_found,"no queue 'test' in vhost '/'",'queue.declare'}

Und ein ähnlicher Fehler von AMQP:

2013-05-03 23:17:24,059 ERROR [org.springframework.amqp.rabbit.listener.SimpleMessageListenerContainer] (SimpleAsyncTaskExecutor-1) - Consumer received fatal exception on startup
org.springframework.amqp.rabbit.listener.FatalListenerStartupException: Cannot prepare queue for listener. Either the queue doesn't exist or the broker will not allow us to use it.

Aus dem Stack-Trace geht hervor, dass die Warteschlange in einem "passiven" Modus erstellt wird. Kann jemand darauf hinweisen, wie ich die Warteschlange ohne den passiven Modus erstellen würde, damit dieser Fehler nicht angezeigt wird? Oder vermisse ich noch etwas?

Antworten auf die Frage(3)

Ihre Antwort auf die Frage