У диспетчера нет подписчиков на канал unknown.channel.name.JAVA

Программисты JAVA общаются здесь
Ответить Пред. темаСлед. тема
Anonymous
 У диспетчера нет подписчиков на канал unknown.channel.name.

Сообщение Anonymous »

Я пытаюсь запустить издателя и подписчика, используя пружинную привязку.

убедился, что пункт назначения (обмен) создан локально на Rabbit-MQ. p>

издатель (app.yml)

Код: Выделить всё

spring:
cloud:
stream:
bindings:
output:
destination: HelloDestination
rabbitmq:
addresses: xxx.xxx.xx.xxx
Подписчик (app.yml)

Код: Выделить всё

spring:
cloud:
stream:
bindings:
input:
destination: HelloDestination
rabbitmq:
addresses: xxx.xxx.xx.xxx
server:
port: 8081
издатель (pom.yml)

Код: Выделить всё

    

org.springframework.cloud
spring-cloud-starter-stream-rabbit
2.1.1.RELEASE


org.springframework.boot
spring-boot-starter-integration

Подписчик (pom.yml)

Код: Выделить всё

        
org.springframework.cloud
spring-cloud-starter-stream-rabbit
2.1.1.RELEASE


org.springframework.boot
spring-boot-starter-integration

издатель (исходный Java-файл)

Код: Выделить всё

@SpringBootApplication
@EnableBinding(Source.class)
public class Demo1Application {

//@Autowired
//private static MessageChannel output;

public static void main(String[] args) {
SpringApplication.run(Demo1Application.class, args);

String sampleMessage = "Hello";
Message message =
MessageBuilder.withPayload("Hello World").build();

MessageChannel output = new DirectChannel();

output.send(message);

}

}
//consumer (исходный файл)

Код: Выделить всё

@SpringBootApplication
@EnableBinding(Sink.class)
public class Demo2Application {

public static void main(String[] args) {
SpringApplication.run(Demo2Application.class, args);
}

@StreamListener(Sink.INPUT)
public void listenerMethod(Message message)
{
System.out.println("The Message is :"+message);
}
}
//----

После всех действий я вижу созданный обмен, а также сообщение на обмен. Потребитель запускается нормально. но производитель захлебывается при попытке отправить сообщение с сообщением об ошибке

Код: Выделить всё

Exception in thread "main" org.springframework.messaging.MessageDeliveryException: Dispatcher has no subscribers for channel 'unknown.channel.name'.; nested exception is org.springframework.integration.MessageDispatchingException: Dispatcher has no subscribers, failedMessage=GenericMessage [payload=Hello World, headers={id=ccf86001-5dba-6c64-bc76-e1f58782de42, timestamp=1558883876384}], failedMessage=GenericMessage [payload=Hello World, headers={id=ccf86001-5dba-6c64-bc76-e1f58782de42, timestamp=1558883876384}]
at org.springframework.integration.channel.AbstractSubscribableChannel.doSend(AbstractSubscribableChannel.java:77)
at org.springframework.integration.channel.AbstractMessageChannel.send(AbstractMessageChannel.java:461)
at org.springframework.integration.channel.AbstractMessageChannel.send(AbstractMessageChannel.java:401)
at com.example.demo.Demo1Application.main(Demo1Application.java:29)
Caused by: org.springframework.integration.MessageDispatchingException: Dispatcher has no subscribers, failedMessage=GenericMessage [payload=Hello World, headers={id=ccf86001-5dba-6c64-bc76-e1f58782de42, timestamp=1558883876384}]
at org.springframework.integration.dispatcher.UnicastingDispatcher.doDispatch(UnicastingDispatcher.java:138)
at org.springframework.integration.dispatcher.UnicastingDispatcher.dispatch(UnicastingDispatcher.java:105)
at org.springframework.integration.channel.AbstractSubscribableChannel.doSend(AbstractSubscri
Я ожидал, что сообщение будет прочитано.

Подробнее здесь: https://stackoverflow.com/questions/563 ... annel-name
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «JAVA»