2015-10-19 2 views
1

Я использую Spring AMQP и Spring Integration. В настоящее время я использую активатор службы из интеграции в качестве моего обработчика. Я попытался заставить слушателя amqp работать, но я никогда не получаю сообщение. Используется ли принятая практика сервис-активатор или я должен использовать слушателя?служебный активатор или контейнер-слушатель

<!-- Receive Inbound messages and process them --> 
<int-amqp:inbound-channel-adapter channel="sda.text.analytics.process.channel" queue-names="${sda.text.analytics.process.queue}" 
    connection-factory="sda.text.analytics.connectionFactory" prefetch-count="${sda.mule.prefetchCount}" 
    concurrent-consumers="${uima.process.threads}" task-executor="analyticsExecutor" receive-timeout="5000"/> 

<int:json-to-object-transformer input-channel="sda.text.analytics.process.channel" type="com.issinc.sda.ingest.impl.IngestBean"/> 

<bean id="analyticsExecutor" class="org.springframework.scheduling.concurrent.ThreadPoolTaskExecutor"> 
    <property name="corePoolSize" value="${uima.process.threads}" /> 
    <property name="maxPoolSize" value="${uima.process.threads}" /> 
    <property name="queueCapacity" value="${sda.mule.prefetchCount}" /> 
</bean> 

<!-- Service that listens for an inbound messages, processes the text and sends the processed text back --> 
<int:service-activator input-channel="sda.text.analytics.process.channel" output-channel="sda.text.analytics.response.channel" 
    ref="asyncExtractionService" method="processMessage" > 
</int:service-activator> 
<!--<rabbit:listener-container connection-factory="sda.connectionFactory" message-converter="jsonMessageConverter"> 
    <rabbit:listener ref="asyncExtractionService" method="processMessage" queue-names="${sda.process.queue}" /> 
</rabbit:listener-container>--> 

ответ

0

Вы вообще не используете «активатор обслуживания»; вы вызываете тот же компонент/метод, что и активатор службы.

Рассмотрите возможность использования адаптера входящего канала AMQP для отправки сообщений активатору услуги через sda.process.channel.

+0

Спасибо, Гэри. У меня есть канал-адаптер: dbmargo

+0

Как вы можете видеть, Код/config не отображается в комментариях здесь. Лучше отредактировать свой вопрос. У вас есть сообщения в очереди? Правильны ли ваши свойства? Как правило, включение журнала отладки предоставляет достаточную информацию для отладки таких проблем. –

+0

Вы также должны взглянуть на [образец] (https://github.com/spring-projects/spring-integration-samples/tree/master/basic/amqp). –

Смежные вопросы