- Create the Message Driven POJO: The only requirement for the Message Driven POJO is to implement the MessageListener interface. The following listing shows the code for the MDP
public class SpringMDP implements MessageListener { public void onMessage(Message message) { try { System.out.println(((TextMessage) message).getText()); } catch (JMSException ex) { throw new RuntimeException(ex); } } }
SpringMDP.java - Create the bean definition in applicationContext.xml file.
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" "http://www.springframework.org/dtd/spring-beans.dtd"> <beans> <!-- this is the Message Driven POJO (MDP) --> <bean id="messageListener" class="jms.SpringMDP" /> <bean id="jndiTemplate" class="org.springframework.jndi.JndiTemplate"> <property name="environment"> <props> <prop key="java.naming.factory.initial">weblogic.jndi.WLInitialContextFactory</prop> <prop key="java.naming.provider.url">t3://localhost:20001</prop> </props> </property> </bean> <bean id="connectionFactory" class="org.springframework.jndi.JndiObjectFactoryBean"> <property name="jndiTemplate"> <ref bean="jndiTemplate" /> </property> <property name="jndiName"> <value>jms/connectionFactory</value> </property> </bean> <bean id="queue" class="org.springframework.jndi.JndiObjectFactoryBean"> <property name="jndiTemplate"> <ref bean="jndiTemplate" /> </property> <property name="jndiName"> <value>jms/testQueue</value> </property> </bean> <bean id="listenerContainer" class="org.springframework.jms.listener.DefaultMessageListenerContainer"> <property name="concurrentConsumers" value="5" /> <property name="connectionFactory" ref="connectionFactory" /> <property name="destination" ref="queue" /> <property name="messageListener" ref="messageListener" /> </bean> </beans>
WEB-INF/applicationContext.xml
The Message listener container handles all the required functions for making the Simple POJO a Message Driven POJO. - Update Web.xml to include a listener for spring.
<listener> <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class> </listener>
Home » WebLogic » Implementing JMS with Spring: Message Driven POJO
Implementing JMS with Spring: Message Driven POJO
The previous post described how to implement a JMS messaging client using Spring JMS. This post will describe how to implement the Message listener as a spring Message driven POJO. Follow these steps to implement the Message driven POJO
{ 0 comments... Views All / Send Comment! }
Post a Comment