Problem: JBoss Messaging XA Recovery Configuration
felderr Jan 11, 2010 5:26 PMWhen reading the JBoss messaging documentation 1.4.5 on chapter 8 (JBoss Messaging XA Recovery Configuration) is says that the configuration file /conf/jbossjta-properties.xml must be modified to support recovery of XA transactions:
<property name="com.arjuna.ats.jta.recovery.XAResourceRecovery.JBMESSAGING1"
value="org.jboss.jms.server.recovery.MessagingXAResourceRecovery;java:/DefaultJMSProvider"/>
On JBoss 5 there is no file with the name jbossjta-properties.xml. Instead you have to change the conf/jbossts-properties.xml file with the changes above.After you modify the file and restart the JBoss AS you can find the following error in the log file:
2010-01-11 19:05:37,265 WARN [com.arjuna.ats.jta.logging.loggerI18N] (Thread-19) [com.arjuna.ats.internal.jta.recovery.xarecovery1] Local XARecoveryModule.xaRecovery got XA exception javax.transaction.xa.XAException: Error trying to connect to provider java:/DefaultJMSProvider, XAException.XAER_RMERR
2010-01-11 19:05:37,265 DEBUG [org.jboss.jms.server.recovery.MessagingXAResourceWrapper] (Thread-19) Recover java:/DefaultJMSProvider
2010-01-11 19:05:37,266 ERROR [org.jboss.jms.server.recovery.MessagingXAResourceWrapper] (Thread-19) ********************************Failed to connect to server
javax.naming.NameNotFoundException: ClusteredXAConnectionFactory not bound
The Problem is that the XARecoveryModule tries to start recovering although the Messaging Factories are not yet set up. The ConnectionFactory is set up 3 seconds after the errors occur.
2010-01-11 19:05:40,707 DEBUG [org.jboss.jms.server.connectionfactory.ConnectionFactoryJNDIMapper] (main) Server[1].ConnFactoryJNDIMapper registering connection factory 'jboss.messaging.connectionfactory:service=ClusteredConnectionFactory', bindings: /ClusteredConnectionFactory, /ClusteredXAConnectionFactory, java:/ClusteredConnectionFactory, java:/ClusteredXAConnectionFactory
Beside the fact that the documentation is not up to date (as it refers to the wrong file in JBoss 5) it does also not cover the problem with the loading of the modules and how to work around this severe problem in production! Any ideas?