Как реализовать входящую и исходящую конфигурацию JMS в отдельном приложении Spring интеграции?

Мой пример использования - внедрение сервиса уведомлений в нашем проекте.

Мы использовали пружину с jms, и она отлично работает с другими службами. Возможность отправки сообщения в очередь из одного приложения и получения сообщения из очереди в другом приложении с использованием функций convertAndSend (), convertAndReceive () JMSTemplate.

Теперь я хочу сделать это, используя подход Java-интеграции Spring Java. Мы сделали пример, используя inmsGateway() и outboundGateway() Jms в одном приложении с ActiveMQ.

Как использовать java dsl для Spring Spring в разных приложениях только для отправки / получения сообщений?

Вот мой код,

@Bean
public IntegrationFlow jmsInboundFlow() {
    return IntegrationFlows
            .from(Jms.inboundGateway(this.connectionFactory)
                    .destination("pan.outbound"))
            .transform((String s) -> s.toUpperCase())
            .channel("in-bound-request-channel")
            .get();
}

@Bean
public IntegrationFlow jmsOutboundGatewayFlow() {
    return IntegrationFlows.from("out-bound-request-channel")
            .handle(Jms.outboundGateway(this.connectionFactory)
                        .requestDestination("pan.outbound"))
            .log()
            .bridge()
            .get();
}

@MessagingGateway
interface EchoGateway {

    @Gateway(requestChannel = "out-bound-request-channel")
    String send(String message);

}

1 ответ

Необходимо только разделить конфигурацию - входящий адаптер JMS в одном приложении и исходящий JMS во втором. Способ точно такой же, как в одном приложении? (Может быть, я пропустил некоторую информацию?)

Другие вопросы по тегам