I am using the ActiveMQ with Jencks to carry out asynchronous message
consumption. It looks like activemq does a start when the message is
delivered to the message consumer. Then internally I attempt to send a JMS
message to another queue. The second start is triggered and ActiveMQ throws
the XAER_PROTO error.
I wonder if this is related to using JCA connectors for the consumption of
messages and separate JMS factories for sending messages.
---------------------------------------------------------------------------------------
2009-01-20 19:51:48,932 DEBUG [org.apache.activemq.TransactionContext]
(Executor-0) Start: < 131075, 28, 26,
1--3fd23d49:b163:49762aeb:99-3fd23d49:b163:49762aeb:9a >
---------------------------------------------------------------------------------------
2009-01-20 19:52:07,780 DEBUG [org.apache.activemq.TransactionContext]
(Executor-0) Start: < 131075, 28, 26,
1--3fd23d49:b163:49762aeb:99-3fd23d49:b163:49762aeb:9a >
---------------------------------------------------------------------------------------
2009-01-20 19:52:07,781 WARN [com.arjuna.ats.jta.logging.loggerI18N]
(Executor-0) [com.arjuna.ats.internal.jta.transaction.arjunacore.xastart]
[com.arjuna.ats.internal.jta.transaction.arjunacore.xastart]
TransactionImple.enlistResource - xa_start - caught: XAException.XAER_PROTO
for < 131075, 28, 26, 1--3fd23d49:b163:49762aeb:99-3fd23d49:b163:49762aeb:9a
>
---------------------------------------------------------------------------------------
2009-01-20 19:52:08,164 DEBUG [org.apache.activemq.TransactionContext]
(Executor-0) End: < 131075, 28, 26,
1--3fd23d49:b163:49762aeb:99-3fd23d49:b163:49762aeb:9a >
---------------------------------------------------------------------------------------
2009-01-20 19:52:08,168 DEBUG [org.apache.activemq.TransactionContext]
(Executor-0) Rollback: < 131075, 28, 26,
1--3fd23d49:b163:49762aeb:99-3fd23d49:b163:49762aeb:9a >
---------------------------------------------------------------------------------------
djencks wrote:
>
> Is this the first or second (or later) time your app requests a
> connection in this particular xa transaction?
>
> Does the jencks pooling do transaction caching, i.e. make sure the
> same connection is always supplied when you request a connection
> within an xa tx?
>
> thanks
> david jencks
>
> On Jan 20, 2009, at 11:43 AM, greenbean wrote:
>
>>
>> I am attempting to integrate JBossTS 4.2.3_SP7 into JBoss 4.0.5.GA.
>> I am
>> getting XAER_PROTO Errors From ActiveMQ during its enlistment in a XA
>> transaction. The line of code from ActiveMQ shows:
>>
>> // Are we already associated?
>> if (associatedXid != null) {
>> throw new XAException(XAException.XAER_PROTO);
>> }
>>
>> Is there a way to correct this issue?
>>
>> Exception:
>> 2009-01-20 19:14:30,271 ERROR [STDERR] (Executor-0)
>> javax.transaction.xa.XAException
>> 2009-01-20 19:14:30,271 ERROR [STDERR] (Executor-0) at
>> org.apache.activemq.TransactionContext.start(TransactionContext.java:
>> 286)
>> 2009-01-20 19:14:30,271 ERROR [STDERR] (Executor-0) at
>> com
>> .arjuna
>> .ats
>> .internal
>> .jta
>> .transaction
>> .arjunacore.TransactionImple.enlistResource(TransactionImple.java:865)
>> 2009-01-20 19:14:30,271 ERROR [STDERR] (Executor-0) at
>> com
>> .arjuna
>> .ats
>> .internal
>> .jta
>> .transaction
>> .arjunacore.TransactionImple.enlistResource(TransactionImple.java:499)
>> 2009-01-20 19:14:30,271 ERROR [STDERR] (Executor-0) at
>> org
>> .jencks
>> .pool
>> .PooledSpringXAConnection
>> .createXASession(PooledSpringXAConnection.java:199)
>> 2009-01-20 19:14:30,271 ERROR [STDERR] (Executor-0) at
>> org
>> .jencks
>> .pool
>> .PooledSpringXAConnection
>> .createSession(PooledSpringXAConnection.java:277)
>> 2009-01-20 19:14:30,271 ERROR [STDERR] (Executor-0) at
>> org
>> .springframework
>> .jms.support.JmsAccessor.createSession(JmsAccessor.java:196)
>> 2009-01-20 19:14:30,271 ERROR [STDERR] (Executor-0) at
>> org.springframework.jms.core.JmsTemplate.access$500(JmsTemplate.java:
>> 90)
>> 2009-01-20 19:14:30,271 ERROR [STDERR] (Executor-0) at
>> org.springframework.jms.core.JmsTemplate
>> $JmsTemplateResourceFactory.createSession(JmsTemplate.java:1039)
>> 2009-01-20 19:14:30,271 ERROR [STDERR] (Executor-0) at
>> org
>> .springframework
>> .jms
>> .connection
>> .ConnectionFactoryUtils
>> .doGetTransactionalSession(ConnectionFactoryUtils.java:282)
>> 2009-01-20 19:14:30,271 ERROR [STDERR] (Executor-0) at
>> org.springframework.jms.core.JmsTemplate.execute(JmsTemplate.java:446)
>> 2009-01-20 19:14:30,271 ERROR [STDERR] (Executor-0) at
>> org.springframework.jms.core.JmsTemplate.send(JmsTemplate.java:526)
>> 2009-01-20 19:14:30,271 ERROR [STDERR] (Executor-0) at
>> org
>> .springframework
>> .jms.core.JmsTemplate.convertAndSend(JmsTemplate.java:636)
>>
>> --
>> View this message in context:
>> http://www.nabble.com/JBossTS-4.2.3_SP7-ActiveMQ-4.1.2-XAER_PROTO-Error-tp21570184p21570184.html
>> Sent from the ActiveMQ - User mailing list archive at Nabble.com.
>>
>
>
>
--
View this message in context:
http://www.nabble.com/JBossTS-4.2.3_SP7-ActiveMQ-4.1.2-XAER_PROTO-Error-tp21570184p21571089.html
Sent from the ActiveMQ - User mailing list archive at Nabble.com.