HowDoIConfigureAnMDBToTalkToARemoteQueue
tonylmai Mar 21, 2009 12:59 AMI am trying to port my application from JBoss 4.2.1 to 5.0.Beta1. I am running into a problem with configuration for an MDB to access a remote queue.
I had my MDB configured in JBoss 4.2.1 using the example from a great blog on JBoss' wiki HowDoIConfigureAnMDBToTalkToARemoteQueue (http://www.jboss.org/community/docs/DOC-9893)
However, this configuration seems to fail under JBoss 5.0. Can someone shed a light? I would greatly appreciate some help..
Here are the configurations:
/* 1. MDB */
@MessageDriven(activationConfig = { @ActivationConfigProperty(propertyName="destinationType", propertyValue="javax.jms.Topic") , @ActivationConfigProperty(propertyName="destination", propertyValue=Configuration.BANKDESK_CHANNEL_JNDI_NAME) , @ActivationConfigProperty(propertyName = "providerAdapterJNDI", propertyValue="java:/IBS_JMSProvider") // , @ActivationConfigProperty(propertyName="DLQMaxResent", propertyValue="10") }) @Name("bankTxListener") // Seam's component name public class BankTransactionsListener implements javax.jms.MessageListener, Serializable { ... }
/* 2. dest-service-ds.xml */
<server> <mbean code="org.jboss.jms.jndi.JMSProviderLoader" name="jboss.mq:service=JMSProviderLoader,name=RemoteJMSProvider,server=SF-CORP-QA-03"> <attribute name="ProviderName">IBS_JMSProvider</attribute> <attribute name="ProviderAdapterClass">org.jboss.jms.jndi.JNDIProviderAdapter</attribute> <attribute name="FactoryRef">XAConnectionFactory</attribute> <!-- The queue connection factory --> <attribute name="QueueFactoryRef">XAConnectionFactory</attribute> <!-- The topic factory --> <attribute name="TopicFactoryRef">XAConnectionFactory</attribute> <!-- Connect to JNDI on the host "queuehost" port 1099 --> <attribute name="Properties"> java.naming.factory.initial=org.jnp.interfaces.NamingContextFactory java.naming.factory.url.pkgs=org.jnp.interfaces java.naming.provider.url=localhost:1099 </attribute> </mbean> </server>
/* 3. jboss.xml */
<jboss xmlns="http://www.jboss.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.jboss.com/xml/ns/javaee http://www.jboss.org/j2ee/schema/jboss_5_0.xsd" version="3.0"> <invoker-proxy-bindings> <invoker-proxy-binding> <name>IBS_JMS_MDB_Invoker</name> <invoker-mbean>does-not-matter</invoker-mbean> <proxy-factory>org.jboss.ejb.plugins.jms.JMSContainerInvoker</proxy-factory> <proxy-factory-config> <JMSProviderAdapterJNDI>IBS_JMSProvider</JMSProviderAdapterJNDI> <ServerSessionPoolFactoryJNDI>StdJMSPool</ServerSessionPoolFactoryJNDI> <MinimumSize>1</MinimumSize> <MaximumSize>15</MaximumSize> <KeepAliveMillis>30000</KeepAliveMillis> <MaxMessages>1</MaxMessages> <MDBConfig> <ReconnectIntervalSec>10</ReconnectIntervalSec> <DLQConfig> <DestinationQueue>queue/DLQ</DestinationQueue> <MaxTimesRedelivered>10</MaxTimesRedelivered> <TimeToLive>0</TimeToLive> </DLQConfig> </MDBConfig> </proxy-factory-config> </invoker-proxy-binding> </invoker-proxy-bindings> </jboss>
Again, your help is greatly appreciated. Thanks
-tony