2017-10-27 1 views
0

Ich versuche nur, einen einfachen Test für RabbitMQ zu machen, und ich habe Erlang installiert sowie RabbitMQ läuft. Mein Empfänger:RabbitMQ Queue deklariert nie

private final static String QUEUE_NAME = "hello"; 

public static void main(String[] argv) throws Exception { 
    ConnectionFactory factory = new ConnectionFactory(); 
    factory.setHost("localhost"); 
    Connection connection = factory.newConnection(); 
    Channel channel = connection.createChannel(); 

    channel.queueDeclare(QUEUE_NAME, false, false, false, null); 
    System.out.println(" [*] Waiting for messages. To exit press CTRL+C"); 

    Consumer consumer = new DefaultConsumer(channel) { 
    @Override 
     public void handleDelivery(String consumerTag, Envelope envelope, 
       BasicProperties properties, byte[] body) throws IOException 
     { 
      // TODO Auto-generated method stub 
      String message = new String(body, "UTF-8"); 
      System.out.println(" [x] Received '" + message + "'"); 
     } 
    }; 
    channel.basicConsume(QUEUE_NAME, true, consumer); 
} 

Er druckt nie die erste SYSOUT aus, weil es die Warteschlange erklärt auf „channel.queueDeclare“ Linie stecken bleibt. Rabbit-Protokoll besagt, dass es eine AMQP-Verbindung akzeptiert und der Benutzer guest authentifiziert wird und Zugriff auf vhost erhält.

Jede Hilfe wäre willkommen.

Antwort

0

ich nur kopiert/eingefügt Code ohne Probleme ...

[*] Waiting for messages. To exit press CTRL+C 
[x] Received 'foo' 

Ich schlage vor, Sie die Management-Plugin aktivieren und den Admin-UI erkunden.

Warum haben Sie die Tags hinzugefügt, da diese Frage nichts mit Spring zu tun hat und Sie den nativen Client direkt verwenden?

+0

Danke. Ich habe die Tags korrigiert. Nun, wie aktiviere ich das Management-Plugin und erkunden Sie die Admin-Benutzeroberfläche? – Camilo

+0

https://www.rabbitmq.com/management.html –

Verwandte Themen