I had to revert this change since it broke the build.

-dain

On Sep 22, 2007, at 11:32 AM, [EMAIL PROTECTED] wrote:

Author: manugeorge
Date: Sat Sep 22 11:32:45 2007
New Revision: 578471

URL: http://svn.apache.org/viewvc?rev=578471&view=rev
Log:
Temporary Fix for GERONIMO-3354 - Exception thrown by MDB involved in XA transaction. Wrapped XAResource to make it NamedXAResource. Container id is passed as the name.

Modified:
openejb/trunk/openejb3/container/openejb-core/src/main/java/org/ apache/openejb/core/mdb/EndpointFactory.java

Modified: openejb/trunk/openejb3/container/openejb-core/src/main/ java/org/apache/openejb/core/mdb/EndpointFactory.java URL: http://svn.apache.org/viewvc/openejb/trunk/openejb3/container/ openejb-core/src/main/java/org/apache/openejb/core/mdb/ EndpointFactory.java?rev=578471&r1=578470&r2=578471&view=diff ====================================================================== ======== --- openejb/trunk/openejb3/container/openejb-core/src/main/java/org/ apache/openejb/core/mdb/EndpointFactory.java (original) +++ openejb/trunk/openejb3/container/openejb-core/src/main/java/org/ apache/openejb/core/mdb/EndpointFactory.java Sat Sep 22 11:32:45 2007
@@ -17,6 +17,8 @@
  */
 package org.apache.openejb.core.mdb;

+import org.apache.geronimo.transaction.manager.NamedXAResource;
+import org.apache.geronimo.transaction.manager.WrapperNamedXAResource;
 import org.apache.openejb.DeploymentInfo;
 import org.apache.openejb.core.CoreDeploymentInfo;

@@ -54,7 +56,11 @@
     }

public MessageEndpoint createEndpoint(XAResource xaResource) throws UnavailableException { - EndpointHandler endpointHandler = new EndpointHandler (container, deploymentInfo, instanceFactory, xaResource);
+        // Hack to get GERONIMO-3354 error from not ocurring.
+ //TODO Create an abstraction so that we need not use geronimo api classes(NamedXAResource). + //TODO Confirm that this is all that is required for transaction recovery + NamedXAResource wrapper = new WrapperNamedXAResource (xaResource, container.getContainerID().toString()); + EndpointHandler endpointHandler = new EndpointHandler (container, deploymentInfo, instanceFactory, wrapper); MessageEndpoint messageEndpoint = (MessageEndpoint) Proxy.newProxyInstance(classLoader, interfaces, endpointHandler);
         return messageEndpoint;
     }



Reply via email to