[jboss-user] [Messaging, JMS & JBossMQ] - Howto connect a EJB3 MDB to a remote queue?

estiedi do-not-reply at jboss.com
Fri Dec 22 03:16:59 EST 2006


Hi,

I need to make a EJB3 MDB that listens for messages coming from another JBoss server. 
I'm pretty new to JBoss and an intense googling for examples and tutorials  wasn't very helpful for me. Especially the possibility of doing things several different ways is confusing. Also it looks like it changes quite a lot between minor versions? (I'm currently using JBoss 4.0.5)

Anyway, so far I configured a JMSProviderLoader in jms-ds.xml:
 <mbean code="org.jboss.jms.jndi.JMSProviderLoader"
  | 	 name="jboss.mq:service=JMSProviderLoader,name=RemoteMQProvider,server=192.168.100.10">
  |     <attribute name="ProviderName">ISJMSProvider</attribute>
  |     <attribute name="ProviderAdapterClass">org.jboss.jms.jndi.JNDIProviderAdapter</attribute>
  |     <attribute name="QueueFactoryRef">XAConnectionFactory</attribute>
  |     <attribute name="TopicFactoryRef">XAConnectionFactory</attribute>
  |     <attribute name="Properties">
  |        java.naming.factory.initial=org.jnp.interfaces.NamingContextFactory
  |        java.naming.factory.url.pkgs=org.jnp.interfaces
  |        java.naming.provider.url=192.168.100.10:25199
  |     </attribute>
  |   </mbean>

and an invoker proxy in the ejb jboss.xml:

  |    <message-driven>
  |       <ejb-name>TestMDB</ejb-name>
  |       <destination-jndi-name>queue/remotequeue</destination-jndi-name>
  |       <invoker-bindings>
  |         <invoker>
  | <invoker-proxy-binding-name>TextMDBInvoker</invoker-proxy-binding-name>
  |         </invoker>
  |       </invoker-bindings>
  |     </message-driven>
  |   </enterprise-beans>
  | 
  |   <invoker-proxy-bindings>
  |     <invoker-proxy-binding>
  |       <name>TextMDBInvoker</name>
  |       <invoker-mbean>does-not-matter</invoker-mbean>
  |       <proxy-factory>org.jboss.ejb.plugins.jms.JMSContainerInvoker</proxy-factory>
  |       <proxy-factory-config>
  |         <JMSProviderAdapterJNDI>ISJMSProvider</JMSProviderAdapterJNDI>
  |         <ServerSessionPoolFactoryJNDI>StdJMSPool</ServerSessionPoolFactoryJNDI>
  |         <MinimumSize>1</MinimumSize>
  |         <MaximumSize>15</MaximumSize>
  |         <KeepAliveMillis>30000</KeepAliveMillis>
  |         <MaxMessages>1</MaxMessages>
  |         <MDBConfig>
  |           <ReconnectIntervalSec>5</ReconnectIntervalSec>
  |           <DLQConfig>
  |             <DestinationQueue>queue/DLQ</DestinationQueue>
  |             <MaxTimesRedelivered>10</MaxTimesRedelivered>
  |             <TimeToLive>0</TimeToLive>
  |           </DLQConfig>
  |         </MDBConfig>
  |       </proxy-factory-config>
  |     </invoker-proxy-binding>
  |   </invoker-proxy-bindings>
  | 

But now, how do I configure my EJB3 MDB to connect to this remote queue?

Also the remote JBoss server is version 3. I have been told that this should  be no problem. But is it really no problem when using EJB3?

All tips and hints are greatly appreciated.

D.

View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=3995806#3995806

Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=3995806



More information about the jboss-user mailing list