Вызывается: com.rabbitmq.client.ShutdownSignalException: ошибка канала;метод протокола: - PullRequest
0 голосов
/ 02 декабря 2018

У меня есть одна ошибка в очереди RabitMQ JAVA.Когда я пытаюсь запустить потребительский клиент, он бросает мне это исключение.

Exception in thread "main" java.io.IOException
at com.rabbitmq.client.impl.AMQChannel.wrap(AMQChannel.java:106)
at com.rabbitmq.client.impl.AMQChannel.wrap(AMQChannel.java:102)
at com.rabbitmq.client.impl.ChannelN.basicConsume(ChannelN.java:1107)
at com.rabbitmq.client.impl.ChannelN.basicConsume(ChannelN.java:1075)
at com.rabbitmq.client.impl.ChannelN.basicConsume(ChannelN.java:1059)
at rabbit.consumer.ConsumerDVD.main(ConsumerDVD.java:52)

Причина: com.rabbitmq.client.ShutdownSignalException: ошибка канала;Метод протокола: #method (код ответа = 404, текст ответа = NOT_FOUND - нет очереди 'привет' в vhost '/', идентификатор класса = 60, идентификатор метода = 20) в com.rabbitmq.utility.ValueOrException.getValue (ValueOrException.java:67) по адресу com.rabbitmq.utility.BlockingValueOrException.uninterruptibleGetValue (BlockingValueOrException.java:33) по адресу com.rabbitmq.client.impl.AMQChannel $ BlockingRpcContinjqqb ().client.impl.ChannelN.basicConsume (ChannelN.java:1105) ... еще 3 причины: com.rabbitmq.client.ShutdownSignalException: ошибка канала;Метод протокола: #method (код ответа = 404, текст ответа = NOT_FOUND - нет очереди 'привет' в vhost '/', идентификатор класса = 60, идентификатор метода = 20) в com.rabbitmq.client.impl.ChannelN.asyncShutdown (ChannelN.java:484) в com.rabbitmq.client.impl.ChannelN.processAsync (ChannelN.java:321) в com.rabbitmq.client.impl.AMQChannel.handleCompleteInboundCommand (AMQChannel.jp).rabbitmq.client.impl.AMQChannel.handleFrame (AMQChannel.java:91) в com.rabbitmq.client.impl.AMQConnection $ MainLoop.run (AMQConnection.java:554) в java.lang.Thread.run (Thread.java).: 748)

Части моего кода:

public class ConsumerDVD {
private final static String QUEUE_NAME = "hello";
private static Writer writer;
 Consumer consumer = new DefaultConsumer(channel) {
        @Override
        public void handleDelivery(String consumerTag, Envelope envelope, AMQP.BasicProperties properties, byte[] body)
            throws IOException {
            DVD dvd = DVD.fromBytes(body);
            System.out.println(" [x] Received '" + dvd.toString() + "'");
            mailService.sendMail("cata1096@yahoo.com","Dvd has been added -- Rabbit!", dvd.toString());
            writeToFile(dvd); 
        }
        };
    channel.basicConsume(QUEUE_NAME, true, consumer);
...