Over a million developers have joined DZone.
Platinum Partner

Spring Integrating with Remote Topic

· Integration Zone

The Integration Zone is brought to you in partnership with 3scale. Take control of your APIs and get a free t-shirt when you complete the 3step Challenge

I am going to demonstrate how to receive messages from a remote topic in Spring Integration.

First, we place the remote Topic a JBoss application server.

1. Add topic implementation jars into spring lib class-path

2. We going to create a jmsTemplate.  This makes the Java code pretty minimal and simple:

public class TgwMDB implements MessageListener
{
 
    @Override
    public void onMessage(Message msg)
    {
    }
}

3. Most of the configuration is in the applicationContextXml:

3.1 Declare jmsTemplate:

jnp://server.ip:1099
org.jnp.interfaces.NamingContextFactory
org.jboss.naming:org.jnp.interfaces

3.2 Declare jndiTopicConnFactory.

    <!-- JNDI name of connection factory as defined by provider -->  

3.3 Declare ConnectionFactory:

    <!-- Number of sessions that will be cached -->  

3.4. Declare DestinationResolver:

3.5 Declare DefaultMessageListenerContainer which will act as a cached message listener:

    // this property pubSubDomain turns the listener from Queue to Topic.  

You ready now to receive messages.



The Integration Zone is brought to you in partnership with 3scale. Learn how API providers have changed the way we think about integration in The Platform Vision of API Giants.

Topics:

Published at DZone with permission of Idan Fridman , DZone MVB .

Opinions expressed by DZone contributors are their own.

{{ parent.title || parent.header.title}}

{{ parent.tldr }}

{{ parent.urlSource.name }}