[
https://issues.apache.org/jira/browse/GERONIMO-3354?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12579170#action_12579170
]
David Jencks commented on GERONIMO-3354:
----------------------------------------
OPENEJB-702 has been fixed. There's a flag to control whether the XAResource
from the resource adapter is wrapped before sending to the geronimo TM. This
has not yet been integrated into the appropriate geronimo gbean or deployment
code.
The activemq fix does not appear to be strictly necessary as long as you avoid
the vm transport. tcp transport appears to work fine.
> Exception thrown by MDB involved in XA transaction
> --------------------------------------------------
>
> Key: GERONIMO-3354
> URL: https://issues.apache.org/jira/browse/GERONIMO-3354
> Project: Geronimo
> Issue Type: Bug
> Security Level: public(Regular issues)
> Components: ActiveMQ, OpenEJB, transaction manager
> Affects Versions: 2.0, 2.0.x, 2.1
> Environment: Geronimo 2.0 (tomcat) build from 07/24
> (http://people.apache.org/~prasad/binaries/20070724/)
> DayTrader 1.2 or 2.0 (any runtime mode) with asyn order processing enabled
> Reporter: Christopher James Blythe
> Assignee: David Jencks
> Priority: Critical
> Fix For: 2.0.x, 2.1.1
>
>
> The async order processing in DayTrader uses the TradeBrokerMDB to handle
> complete order operations whenever a buy or sell is performed. When these
> transactions are executed, the transaction appears to complete; however, the
> following exception is written to the console and log file.
> According to Jencks, this seems to indicate that the tx info is not being
> written to the transaction log.
> 22:59:18,421 ERROR [Transaction] Please correct the integration and supply a
> NamedXAResource
> java.lang.IllegalStateException : Cannot log transactions as [EMAIL
> PROTECTED] is not a NamedXAResource.
> at
> org.apache.geronimo.transaction.manager.TransactionImpl$TransactionBranch.getResourceName(TransactionImpl.java
> :697)
> at org.apache.geronimo.transaction.log.HOWLLog.prepare(HOWLLog.java:254)
> at
> org.apache.geronimo.transaction.log.HOWLLog$$FastClassByCGLIB$$7315be2e.invoke(<generated>)
> at net.sf.cglib.reflect.FastMethod.invoke (FastMethod.java:53)
> at
> org.apache.geronimo.gbean.runtime.FastMethodInvoker.invoke(FastMethodInvoker.java:38)
> at
> org.apache.geronimo.gbean.runtime.GBeanOperation.invoke(GBeanOperation.java:124)
> at org.apache.geronimo.gbean.runtime.GBeanInstance.invoke
> (GBeanInstance.java:830)
> at org.apache.geronimo.gbean.runtime.RawInvoker.invoke(RawInvoker.java:57)
> at
> org.apache.geronimo.kernel.basic.RawOperationInvoker.invoke(RawOperationInvoker.java:35)
> at org.apache.geronimo.kernel.basic.ProxyMethodInterceptor.intercept
> (ProxyMethodInterceptor.java:96)
> at
> org.apache.geronimo.gbean.GBeanLifecycle$$EnhancerByCGLIB$$ba0af455.prepare(<generated>)
> at
> org.apache.geronimo.transaction.manager.TransactionImpl.internalPrepare(TransactionImpl.java
> :444)
> at
> org.apache.geronimo.transaction.manager.TransactionImpl.commit(TransactionImpl.java:316)
> at
> org.apache.geronimo.transaction.manager.TransactionManagerImpl.commit(TransactionManagerImpl.java:238)
> at
> org.apache.openejb.core.transaction.TransactionPolicy.commitTransaction(TransactionPolicy.java:139)
> at
> org.apache.openejb.core.transaction.TxRequired.afterInvoke(TxRequired.java:75)
> at org.apache.openejb.core.mdb.MdbContainer.afterDelivery
> (MdbContainer.java:375)
> at
> org.apache.openejb.core.mdb.EndpointHandler.afterDelivery(EndpointHandler.java:274)
> at
> org.apache.openejb.core.mdb.EndpointHandler.invoke(EndpointHandler.java:164)
> at $Proxy36.afterDelivery(Unknown Source)
> at
> org.apache.activemq.ra.MessageEndpointProxy$MessageEndpointAlive.afterDelivery(MessageEndpointProxy.java:126)
> at
> org.apache.activemq.ra.MessageEndpointProxy.afterDelivery(MessageEndpointProxy.java:65)
> at
> org.apache.activemq.ra.ServerSessionImpl.afterDelivery(ServerSessionImpl.java:216)
> at org.apache.activemq.ActiveMQSession.run(ActiveMQSession.java:751)
> at org.apache.activemq.ra.ServerSessionImpl.run(
> ServerSessionImpl.java:165)
> at
> org.apache.geronimo.connector.work.WorkerContext.run(WorkerContext.java:290)
> at
> org.apache.geronimo.connector.work.pool.NamedRunnable.run(NamedRunnable.java:32)
> at org.apache.geronimo.pool.ThreadPool$1.run (ThreadPool.java:201)
> at
> org.apache.geronimo.pool.ThreadPool$ContextClassLoaderRunnable.run(ThreadPool.java:331)
> at
> java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:665)
> at
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:690)
> at java.lang.Thread.run(Thread.java:801)
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.