Spring Cloud Stream: @StreamListener обрабатывает сообщения дважды

, если вы на Ubuntu 14.04, это сработало для меня, вы можете проверить:

    sudo apt-get remove --purge apache2 apache2-utils
    sudo apt-get install --reinstall  apache2 apache2-utils
0
задан italktothewind 15 January 2019 в 23:02
поделиться

2 ответа

Думаю, из конфига вы пытаетесь опубликовать то же сообщение еще раз в том же месте назначения dest_1.

spring.cloud.stream.bindings.input1.destination=dest_1
spring.cloud.stream.bindings.output1.destination=dest_1

И из журнала ясно, что второе сообщение имеет другой идентификатор

id=788e8bbf-4ae4-86cc-0859-d4f153cb5807
id=2f22ce16-bb5a-350c-8b3d-e6c898760888
0
ответ дан Sabuj Das 15 January 2019 в 23:02
поделиться

Я обнаружил, что @Publisher публикует дважды из-за конфигурации в ExampleConfig. Эта новая конфигурация (заимствованная из здесь ), кажется, работает нормально:

@Bean
public static BeanFactoryPostProcessor bfpp() {
    return bf -> bf.getBean(IntegrationContextUtils.PUBLISHER_ANNOTATION_POSTPROCESSOR_NAME,
        PublisherAnnotationBeanPostProcessor.class).setProxyTargetClass(true);
}
0
ответ дан italktothewind 15 January 2019 в 23:02
поделиться
Другие вопросы по тегам:

Похожие вопросы: