1

I am getting the below exception while publishing messages to the activmq. I am using JBOSS with ActiveMQ which is using PostgresDB.
I have configured the below activemq.xml file in directory.

<beans xmlns="http://www.springframework.org/schema/beans"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd http://activemq.apache.org/schema/core http://activemq.apache.org/schema/core/activemq-core.xsd">



    <bean id="postgres-ds" class="org.postgresql.ds.PGPoolingDataSource" destroy-method="close">    
    <property name="serverName" value="localhost"/>    
    <property name="databaseName" value="activemq"/>    
    <property name="portNumber" value="5432"/>    
    <property name="user" value="postgres"/>    
    <property name="password" value="admin123"/>    
    <property name="dataSourceName" value="postgres"/>    
    <property name="initialConnections" value="1"/>    
    <property name="maxConnections" value="10"/>  
</bean>

And in broaker tag

<broker xmlns="http://activemq.apache.org/schema/core" brokerName="localhost" dataDirectory="${activemq.data}">
<persistenceAdapter>            
        <jdbcPersistenceAdapter dataDirectory="activemq-data" dataSource="#postgres-ds" lockKeepAlivePeriod="5000">         
            <adapter>               
                <postgresql-jdbc-adapter/>          
            </adapter>              
            <locker>                    
                <lease-database-locker lockAcquireSleepInterval="10000"/>               
            </locker>           
        </jdbcPersistenceAdapter>        
    </persistenceAdapter>

Below has been configured standalone-full.xml file in JBOSS.

<resource-adapters>
            <resource-adapter id="activemq-ra.rar">
                <archive>
                    activemq-ra.rar
                </archive>
                <transaction-support>XATransaction</transaction-support>
                <config-property name="ServerUrl">
                    tcp://localhost:61616
                </config-property>
                <connection-definitions>
                    <connection-definition class-name="org.apache.activemq.ra.ActiveMQManagedConnectionFactory" jndi-name="jms/ConnectionFactory" enabled="true" use-java-context="true" pool-name="ActiveMQConnectionFactoryPool" use-ccm="true">
                        <xa-pool>
                            <min-pool-size>1</min-pool-size>
                            <max-pool-size>20</max-pool-size>
                        </xa-pool>
                    </connection-definition>
                </connection-definitions>
                <admin-objects>
                    <admin-object class-name="org.apache.activemq.command.ActiveMQQueue" jndi-name="queue/IP_NAME" enabled="true" use-java-context="true" pool-name="ActiveMQQueue.IP_NAME">
                        <config-property name="PhysicalName">
                            IP_NAME
                        </config-property>
                    </admin-object>
                    <admin-object class-name="org.apache.activemq.command.ActiveMQQueue" jndi-name="queue/IP_NAME_2" enabled="true" use-java-context="true" pool-name="ActiveMQQueue.IP_NAME_2">
                        <config-property name="PhysicalName">
                            IP_NAME_2
                        </config-property>
                    </admin-object>
                </admin-objects>
            </resource-adapter>
        </resource-adapters>

Exception:

17:31:28,466 WARN [com.arjuna.ats.jta] (http-localhost/127.0.0.1:8080-1) ARJUNA016041: prepare on < formatId=131077, gtrid_length=29, bqual_length=36, tx_uid=0:ffff0a4b02b4:34361599:5a7aea01:26, node_name=1, branch_uid=0:ffff0a4b02b4:34361599:5a7aea01:28, subordinatenodename=null, eis_name=java:/jms/ConnectionFactory > (XAResourceWrapperImpl@1c956d35[xaResource=org.apache.activemq.ra.ActiveMQManagedConnection$1@5daa43e4 pad=false overrideRmValue=null productName=ActiveMQ productVersion=5.9.1 jndiName=java:/jms/ConnectionFactory]) failed with exception XAException.XAER_RMFAIL: javax.transaction.xa.XAException: javax/xml/bind/DatatypeConverter at org.apache.activemq.TransactionContext.toXAException(TransactionContext.java:793) at org.apache.activemq.TransactionContext.prepare(TransactionContext.java:487) at org.apache.activemq.ra.LocalAndXATransaction.prepare(LocalAndXATransaction.java:126) at org.jboss.jca.core.tx.jbossts.XAResourceWrapperImpl.prepare(XAResourceWrapperImpl.java:177) at com.arjuna.ats.internal.jta.resources.arjunacore.XAResourceRecord.topLevelPrepare(XAResourceRecord.java:213) at com.arjuna.ats.arjuna.coordinator.BasicAction.doPrepare(BasicAction.java:2530) at com.arjuna.ats.arjuna.coordinator.BasicAction.doPrepare(BasicAction.java:2497) at com.arjuna.ats.arjuna.coordinator.BasicAction.prepare(BasicAction.java:2074) at com.arjuna.ats.arjuna.coordinator.BasicAction.End(BasicAction.java:1485) at com.arjuna.ats.arjuna.coordinator.TwoPhaseCoordinator.end(TwoPhaseCoordinator.java:98) at com.arjuna.ats.arjuna.AtomicAction.commit(AtomicAction.java:162) at com.arjuna.ats.internal.jta.transaction.arjunacore.TransactionImple.commitAndDisassociate(TransactionImple.java:1189) at com.arjuna.ats.internal.jta.transaction.arjunacore.BaseTransaction.commit(BaseTransaction.java:126) at com.arjuna.ats.jbossatx.BaseTransactionManagerDelegate.commit(BaseTransactionManagerDelegate.java:75) at org.jboss.as.ejb3.tx.CMTTxInterceptor.endTransaction(CMTTxInterceptor.java:92) [jboss-as-ejb3-7.5.0.Final-redhat-21.jar:7.5.0.Final-redhat-21] at org.jboss.as.ejb3.tx.CMTTxInterceptor.invokeInOurTx(CMTTxInterceptor.java:284) [jboss-as-ejb3-7.5.0.Final-redhat-21.jar:7.5.0.Final-redhat-21] at org.jboss.as.ejb3.tx.CMTTxInterceptor.requiresNew(CMTTxInterceptor.java:367) [jboss-as-ejb3-7.5.0.Final-redhat-21.jar:7.5.0.Final-redhat-21] at org.jboss.as.ejb3.tx.CMTTxInterceptor.processInvocation(CMTTxInterceptor.java:245) [jboss-as-ejb3-7.5.0.Final-redhat-21.jar:7.5.0.Final-redhat-21] at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:288) [jboss-invocation-1.1.2.Final-redhat-1.jar:1.1.2.Final-redhat-1] at org.jboss.as.ejb3.component.interceptors.CurrentInvocationContextInterceptor.processInvocation(CurrentInvocationContextInterceptor.java:41) [jboss-as-ejb3-7.5.0.Final-redhat-21.jar:7.5.0.Final-redhat-21] at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:288) [jboss-invocation-1.1.2.Final-redhat-1.jar:1.1.2.Final-redhat-1] at org.jboss.as.ejb3.component.invocationmetrics.WaitTimeInterceptor.processInvocation(WaitTimeInterceptor.java:43) [jboss-as-ejb3-7.5.0.Final-redhat-21.jar:7.5.0.Final-redhat-21] at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:288) [jboss-invocation-1.1.2.Final-redhat-1.jar:1.1.2.Final-redhat-1] at org.jboss.as.ejb3.component.interceptors.ShutDownInterceptorFactory$1.processInvocation(ShutDownInterceptorFactory.java:64) [jboss-as-ejb3-7.5.0.Final-redhat-21.jar:7.5.0.Final-redhat-21] at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:288) [jboss-invocation-1.1.2.Final-redhat-1.jar:1.1.2.Final-redhat-1] at org.jboss.as.ejb3.component.interceptors.LoggingInterceptor.processInvocation(LoggingInterceptor.java:59) [jboss-as-ejb3-7.5.0.Final-redhat-21.jar:7.5.0.Final-redhat-21] at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:288) [jboss-invocation-1.1.2.Final-redhat-1.jar:1.1.2.Final-redhat-1] at org.jboss.as.ee.component.NamespaceContextInterceptor.processInvocation(NamespaceContextInterceptor.java:50) [jboss-as-ee-7.5.0.Final-redhat-21.jar:7.5.0.Final-redhat-21] at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:288) [jboss-invocation-1.1.2.Final-redhat-1.jar:1.1.2.Final-redhat-1] at org.jboss.as.ejb3.component.interceptors.AdditionalSetupInterceptor.processInvocation(AdditionalSetupInterceptor.java:55) [jboss-as-ejb3-7.5.0.Final-redhat-21.jar:7.5.0.Final-redhat-21] at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:288) [jboss-invocation-1.1.2.Final-redhat-1.jar:1.1.2.Final-redhat-1] at org.jboss.as.ee.component.TCCLInterceptor.processInvocation(TCCLInterceptor.java:45) [jboss-as-ee-7.5.0.Final-redhat-21.jar:7.5.0.Final-redhat-21] at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:288) [jboss-invocation-1.1.2.Final-redhat-1.jar:1.1.2.Final-redhat-1] at org.jboss.invocation.ChainedInterceptor.processInvocation(ChainedInterceptor.java:61) [jboss-invocation-1.1.2.Final-redhat-1.jar:1.1.2.Final-redhat-1] at org.jboss.as.ee.component.ViewService$View.invoke(ViewService.java:185) [jboss-as-ee-7.5.0.Final-redhat-21.jar:7.5.0.Final-redhat-21] at org.jboss.as.ee.component.ViewDescription$1.processInvocation(ViewDescription.java:185) [jboss-as-ee-7.5.0.Final-redhat-21.jar:7.5.0.Final-redhat-21] at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:288) [jboss-invocation-1.1.2.Final-redhat-1.jar:1.1.2.Final-redhat-1] at org.jboss.invocation.ChainedInterceptor.processInvocation(ChainedInterceptor.java:61) [jboss-invocation-1.1.2.Final-redhat-1.jar:1.1.2.Final-redhat-1] at org.jboss.as.ee.component.ProxyInvocationHandler.invoke(ProxyInvocationHandler.java:73) [jboss-as-ee-7.5.0.Final-redhat-21.jar:7.5.0.Final-redhat-21] at com.deb.ec.courier.api.MessageBus$$$view4.publish(Unknown Source) [courier-core-1.3.0-SNAPSHOT.jar:1.3.0-SNAPSHOT] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) [rt.jar:1.8.0_65] at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) [rt.jar:1.8.0_65] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) [rt.jar:1.8.0_65] at java.lang.reflect.Method.invoke(Method.java:497) [rt.jar:1.8.0_65] at org.jboss.weld.util.reflection.SecureReflections$13.work(SecureReflections.java:267) [weld-core-1.1.28.Final-redhat-1.jar:1.1.28.Final-redhat-1] at org.jboss.weld.util.reflection.SecureReflectionAccess.run(SecureReflectionAccess.java:52) [weld-core-1.1.28.Final-redhat-1.jar:1.1.28.Final-redhat-1] at org.jboss.weld.util.reflection.SecureReflectionAccess.runAsInvocation(SecureReflectionAccess.java:137) [weld-core-1.1.28.Final-redhat-1.jar:1.1.28.Final-redhat-1] at org.jboss.weld.util.reflection.SecureReflections.invoke(SecureReflections.java:263) [weld-core-1.1.28.Final-redhat-1.jar:1.1.28.Final-redhat-1] at org.jboss.weld.bean.proxy.EnterpriseBeanProxyMethodHandler.invoke(EnterpriseBeanProxyMethodHandler.java:115) [weld-core-1.1.28.Final-redhat-1.jar:1.1.28.Final-redhat-1] at org.jboss.weld.bean.proxy.EnterpriseTargetBeanInstance.invoke(EnterpriseTargetBeanInstance.java:56) [weld-core-1.1.28.Final-redhat-1.jar:1.1.28.Final-redhat-1] at org.jboss.weld.bean.proxy.ProxyMethodHandler.invoke(ProxyMethodHandler.java:105) [weld-core-1.1.28.Final-redhat-1.jar:1.1.28.Final-redhat-1] at com.deb.ec.courier.jms.MessageBus$-1689182988$Proxy$_$$Weld$Proxy$.publish(MessageBus$-1689182988$Proxy$$$_Weld$Proxy$.java) [courier-jms-1.3.0-SNAPSHOT.jar:1.3.0-SNAPSHOT] at com.deb.ec.courier.impl.CourierMessageBusSingleton.publish(CourierMessageBusSingleton.java:117) [courier-core-1.3.0-SNAPSHOT.jar:1.3.0-SNAPSHOT] at com.deb.ec.courier.impl.CourierPublishContract.publish(CourierPublishContract.java:26) [courier-core-1.3.0-SNAPSHOT.jar:1.3.0-SNAPSHOT] at com.deb.ec.courier.reference.ECRecordServlet.doPost(ECRecordServlet.java:72) [classes:] at javax.servlet.http.HttpServlet.service(HttpServlet.java:754) [jboss-servlet-api_3.0_spec-1.0.2.Final-redhat-2.jar:1.0.2.Final-redhat-2] at javax.servlet.http.HttpServlet.service(HttpServlet.java:847) [jboss-servlet-api_3.0_spec-1.0.2.Final-redhat-2.jar:1.0.2.Final-redhat-2] at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:295) [jbossweb-7.5.7.Final-redhat-1.jar:7.5.7.Final-redhat-1] at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:214) [jbossweb-7.5.7.Final-redhat-1.jar:7.5.7.Final-redhat-1] at com.deb.service.provider.server.web.SpfServletFilter.doFilter(SpfServletFilter.java:68) [service-provider-3.3.1.jar:3.3.1] at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:246) [jbossweb-7.5.7.Final-redhat-1.jar:7.5.7.Final-redhat-1] at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:214) [jbossweb-7.5.7.Final-redhat-1.jar:7.5.7.Final-redhat-1] at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:231) [jbossweb-7.5.7.Final-redhat-1.jar:7.5.7.Final-redhat-1] at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:149) [jbossweb-7.5.7.Final-redhat-1.jar:7.5.7.Final-redhat-1] at org.jboss.as.web.security.SecurityContextAssociationValve.invoke(SecurityContextAssociationValve.java:169) [jboss-as-web-7.5.0.Final-redhat-21.jar:7.5.0.Final-redhat-21] at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:150) [jbossweb-7.5.7.Final-redhat-1.jar:7.5.7.Final-redhat-1] at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:97) [jbossweb-7.5.7.Final-redhat-1.jar:7.5.7.Final-redhat-1] at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:102) [jbossweb-7.5.7.Final-redhat-1.jar:7.5.7.Final-redhat-1] at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:344) [jbossweb-7.5.7.Final-redhat-1.jar:7.5.7.Final-redhat-1] at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:854) [jbossweb-7.5.7.Final-redhat-1.jar:7.5.7.Final-redhat-1] at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:653) [jbossweb-7.5.7.Final-redhat-1.jar:7.5.7.Final-redhat-1] at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:926) [jbossweb-7.5.7.Final-redhat-1.jar:7.5.7.Final-redhat-1] at java.lang.Thread.run(Thread.java:745) [rt.jar:1.8.0_65] Caused by: javax.jms.JMSException: javax/xml/bind/DatatypeConverter at org.apache.activemq.util.JMSExceptionSupport.create(JMSExceptionSupport.java:54) at org.apache.activemq.ActiveMQConnection.syncSendPacket(ActiveMQConnection.java:1408) at org.apache.activemq.TransactionContext.syncSendPacketWithInterruptionHandling(TransactionContext.java:757) at org.apache.activemq.TransactionContext.prepare(TransactionContext.java:453) ... 71 more Caused by: java.lang.NoClassDefFoundError: javax/xml/bind/DatatypeConverter at org.apache.activemq.store.jdbc.adapter.DefaultJDBCAdapter.doAddMessage(DefaultJDBCAdapter.java:242) at org.apache.activemq.store.jdbc.JDBCMessageStore.addMessage(JDBCMessageStore.java:158) at org.apache.activemq.store.memory.MemoryTransactionStore$3.run(MemoryTransactionStore.java:342) at org.apache.activemq.store.jdbc.JdbcMemoryTransactionStore.prepare(JdbcMemoryTransactionStore.java:75) at org.apache.activemq.transaction.XATransaction.prepare(XATransaction.java:188) at org.apache.activemq.broker.TransactionBroker.prepareTransaction(TransactionBroker.java:247) at org.apache.activemq.broker.BrokerFilter.prepareTransaction(BrokerFilter.java:129) at org.apache.activemq.broker.TransportConnection.processPrepareTransaction(TransportConnection.java:510) at org.apache.activemq.command.TransactionInfo.visit(TransactionInfo.java:98) at org.apache.activemq.broker.TransportConnection.service(TransportConnection.java:330) at org.apache.activemq.broker.TransportConnection$1.onCommand(TransportConnection.java:194) at org.apache.activemq.transport.MutexTransport.onCommand(MutexTransport.java:50) at org.apache.activemq.transport.WireFormatNegotiator.onCommand(WireFormatNegotiator.java:125) at org.apache.activemq.transport.AbstractInactivityMonitor.onCommand(AbstractInactivityMonitor.java:301) at org.apache.activemq.transport.TransportSupport.doConsume(TransportSupport.java:83) at org.apache.activemq.transport.tcp.TcpTransport.doRun(TcpTransport.java:233) at org.apache.activemq.transport.tcp.TcpTransport.run(TcpTransport.java:215) at java.lang.Thread.run(Unknown Source) [rt.jar:1.8.0_65]

17:31:28,478 WARN [com.arjuna.ats.arjuna] (http-localhost/127.0.0.1:8080-1) ARJUNA012073: BasicAction.End() - prepare phase of action-id 0:ffff0a4b02b4:34361599:5a7aea01:26 failed. 17:31:28,478 WARN [com.arjuna.ats.arjuna] (http-localhost/127.0.0.1:8080-1) ARJUNA012075: Action Aborting 17:31:28,716 ERROR [org.jboss.as.ejb3.invocation] (http-localhost/127.0.0.1:8080-1) JBAS014134: EJB Invocation failed on component TransactionalJmsMessageBus for method public abstract void com.deb.ec.courier.api.MessageBus.publish(java.lang.String,com.deb.ec.courier.api.CourierMessage) throws com.deb.ec.courier.error.CourierException: javax.ejb.EJBTransactionRolledbackException: Transaction rolled back at org.jboss.as.ejb3.tx.CMTTxInterceptor.handleEndTransactionException(CMTTxInterceptor.java:138) [jboss-as-ejb3-7.5.0.Final-redhat-21.jar:7.5.0.Final-redhat-21] at org.jboss.as.ejb3.tx.CMTTxInterceptor.endTransaction(CMTTxInterceptor.java:118) [jboss-as-ejb3-7.5.0.Final-redhat-21.jar:7.5.0.Final-redhat-21] at org.jboss.as.ejb3.tx.CMTTxInterceptor.invokeInOurTx(CMTTxInterceptor.java:284) [jboss-as-ejb3-7.5.0.Final-redhat-21.jar:7.5.0.Final-redhat-21] at org.jboss.as.ejb3.tx.CMTTxInterceptor.requiresNew(CMTTxInterceptor.java:367) [jboss-as-ejb3-7.5.0.Final-redhat-21.jar:7.5.0.Final-redhat-21] at org.jboss.as.ejb3.tx.CMTTxInterceptor.processInvocation(CMTTxInterceptor.java:245) [jboss-as-ejb3-7.5.0.Final-redhat-21.jar:7.5.0.Final-redhat-21]

4
  • Note, I did add the <bean> to your original "code"/xml in your question during an edit (you may not see it yet) as it was missing. It isnt really missing is it? Commented Feb 7, 2018 at 15:31
  • Also, you're getting this error Caused by: java.lang.NoClassDefFoundError: javax/xml/bind/DatatypeConverter is the jdbc driver being deployed with your app or does it exist in the lib folder of the server? Commented Feb 7, 2018 at 16:16
  • Hi JGlass,Thanks for response. Modified the tags properly.I am using postgresql-9.1-901-1.jdbc4.jar for postgres driver. Commented Feb 8, 2018 at 5:46
  • 1
    Hi JGlass,The above issue got resolve It was because of jdk9. In jdk9 DatatypeConverter.java file is not present. Have used jdk9 for ActiveMQ and jdk1.8 in Jboss, thats why issue.Thanks Commented Feb 8, 2018 at 13:23

1 Answer 1

1

The above issue got resolve It was because of jdk9. In jdk9 DatatypeConverter.java file is not present. Have used jdk9 for ActiveMQ and jdk1.8 in Jboss, thats why issue.Now i changed jdk9 to jdk1.8 and above issue got resolved. Thanks

Sign up to request clarification or add additional context in comments.

2 Comments

Glad to see you got it working! I'm surprised JBoss even ran under JDK9? Might I suggest you accept your own answer, e.g. click the grey checkbox - that way it doesnt show as unanswered!
No JGlass, JBoss is running under java1.8.Thanks

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.