Hi David,
             I had attached a patch for this very issue in 2.0 in AMQ
and OpenEJB. Some comments from you would be appreciated .

https://issues.apache.org/activemq/browse/AMQ-1438
https://issues.apache.org/jira/browse/OPENEJB-702
https://issues.apache.org/jira/browse/GERONIMO-3354

Even if I pass as name for the NamedXAResource in OpenEJB a hang
occurs in AMQ. With this hack I am able to get rid of the error that
Geronimo throws as well as the hang. All the tests pass in Openejb as
well. I know it needs a bit of cleanup but I need confirmation if this
is the right approach.  Also what should be the name passed for the
XAResource? Is xaResource.toString() ok?

Thanks
Manu


On 10/15/07, David Jencks <[EMAIL PROTECTED]> wrote:
> There's a tranql oracle xa wrapper that's included in geronimo 2.0.2
> (under vote) or available from maven repos but the problem here is in
> openejb: the mdb handling doesn't register properly with the geronimo
> transaction manager.
>
> thanks
> david jencks
>
> On Oct 15, 2007, at 7:16 AM, Jochen Zink wrote:
>
> > Hello,
> >
> > I'm using Geronimo 2.0.1 with a Oracle 9.2 Database. A MDB make
> > some DB-Operations with Container Managed Transaction. After the
> > MDB is complete, and the Container acknoledges the Message, the
> > follwoing Exception is thrown. I read something about a Oracle XA
> > Plugin, but I only found one for Geronimo 1.1.1. Is there already a
> > plugin for Geronimo 2.0.1, which I have not found?
> >
> > Thanks a lot
> > Regards
> > Jochen
> >
> >
> > 12:03:09,312 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.transaction.manager.TransactionLog$
> > $EnhancerByCGLIB$$528ed9c4.prepare(<generated>)
> > at
> > org.apache.geronimo.transaction.manager.TransactionImpl.internalPrepar
> > e(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.commitTransactio
> > n(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 $Proxy39.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:885)
> > at
> > java.util.concurrent.ThreadPoolExecutor$Worker.run
> > (ThreadPoolExecutor.java:907)
> > at java.lang.Thread.run(Thread.java:619)
> >
> > ______________________________________________________________________
> > _
> > Jetzt neu! Schützen Sie Ihren PC mit McAfee und WEB.DE. 3 Monate
> > kostenlos testen. http://www.pc-sicherheit.web.de/startseite/?
> > mc=022220
> >
>
>

Reply via email to