I need to deploy EJB3 MDB on JBOSS 5.1 and listen to the Topic deployed on IBM MQ. One way is to configure the RemoteJMSProvider inside of $JBOSS_HOME/server/default/deploy/messaging/jms-ds.xml. The second way is to use the MQ Resource adapter and deploy it in JBOSS. What are the advantages of one approach to another? Are there any other ways?
The RemoteJMSProvider is a generic JMS JCA adapter and so can be used by lots of JMS Providers. Essentially it is a JCA wrapper around a standard MQ JMS client that then talks to the MQ QueueManager. This does mean it is not optimised for any specific JMS Provider, and is also likely to not be tested by the vendor of JMS Provider being used.
The MQ Resource Adapter is built by IBM and so will be tested and fully supported by IBM when used in a Java EE application server. It will also mean it is optimised for MQ.