0 Replies Latest reply on Jan 8, 2003 5:14 PM by muruga

    Oracle XA Configuration - Use explicit XA call

    muruga

      Hi,

      I am using JBoss 3.2 Beta3 with Oracle XA driver. When i try to use the XADatasource, i get Use explicit XA call ResourceException (see below for the full error message). I thought the oracle XA problem got solved in 3.2 beta3. Maybe i am doing something wrong. Can somebody please help me with this?

      Here is the oracle xa data source config:

      XA Data Source Config:
      =====================

      <xa-datasource>
      <jndi-name>JSBContainerXADataSource</jndi-name>
      <track-connection-by-tx>true</track-connection-by-tx>
      <managedconnectionfactory-class>org.jboss.resource.adapter.jdbc.xa.oracle.XAOracleManagedConnectionFactory</managedconnectionfactory-class>
      <!--xa-datasource-class>oracle.jdbc.xa.client.OracleXADataSource</xa-datasource-class-->
      <xa-datasource-property name="URL">jdbc:oracle:oci8:@</xa-datasource-property>
      <xa-datasource-property name="User">muruga</xa-datasource-property>
      <xa-datasource-property name="Password">muruga</xa-datasource-property>
      </xa-datasource>


      Transaction Service Config:
      ==========================

      <?xml version="1.0" encoding="UTF-8"?>
      <!DOCTYPE server>
      <!-- $Id: transaction-service.xml,v 1.2 2002/07/05 06:10:56 d_jencks Exp $ -->



      <!-- ==================================================================== -->
      <!-- Transactions -->
      <!-- ==================================================================== -->

      <!-- The configurable Xid factory. For use with Oracle, set pad to true -->

      true

      <!--
      | The fast in-memory transaction manager.
      -->

      300

      <depends optional-attribute-name="XidFactory">jboss:service=XidFactory


      <!--
      | UserTransaction support.
      -->



      <!--
      | The CachedConnectionManager is used partly to relay started UserTransactions to
      | open connections so they may be enrolled in the new tx.
      -->





      Exception Trace
      ===============
      2003-01-08 14:26:26,406 INFO [org.jboss.resource.connectionmanager.JBossManagedConnectionPool] ResourceException returning ManagedConnection to pool:
      javax.resource.ResourceException: Could not cleanup: java.sql.SQLException: Use explicit XA call
      at org.jboss.resource.adapter.jdbc.BaseWrapperManagedConnection.cleanup(BaseWrapperManagedConnection.java:175)
      at org.jboss.resource.connectionmanager.InternalManagedConnectionPool.returnConnection(InternalManagedConnectionPool.java:143)
      at org.jboss.resource.connectionmanager.JBossManagedConnectionPool$OnePool.returnConnection(JBossManagedConnectionPool.java:516)
      at org.jboss.resource.connectionmanager.BaseConnectionManager2.returnManagedConnection(BaseConnectionManager2.java:554)
      at org.jboss.resource.connectionmanager.TxConnectionManager$TxConnectionEventListener$TxRemover.afterCompletion(TxConnectionManager.java:628)
      at org.jboss.tm.TransactionImpl.doAfterCompletion(TransactionImpl.java:1206)
      at org.jboss.tm.TransactionImpl.commit(TransactionImpl.java:381)
      at org.jboss.ejb.plugins.TxInterceptorCMT.endTransaction(TxInterceptorCMT.java:361)
      at org.jboss.ejb.plugins.TxInterceptorCMT.runWithTransactions(TxInterceptorCMT.java:295)
      at org.jboss.ejb.plugins.TxInterceptorCMT.invoke(TxInterceptorCMT.java:101)
      at org.jboss.ejb.plugins.SecurityInterceptor.invoke(SecurityInterceptor.java:130)
      at org.jboss.ejb.plugins.LogInterceptor.invoke(LogInterceptor.java:204)
      at org.jboss.ejb.plugins.ProxyFactoryFinderInterceptor.invoke(ProxyFactoryFinderInterceptor.java:154)
      at org.jboss.ejb.StatelessSessionContainer.invoke(StatelessSessionContainer.java:303)
      at org.jboss.ejb.plugins.local.BaseLocalProxyFactory.invoke(BaseLocalProxyFactory.java:351)
      at org.jboss.ejb.plugins.local.StatelessSessionProxy.invoke(StatelessSessionProxy.java:81)
      at $Proxy84.getNextKeySet(Unknown Source)
      at com.collaxa.cube.engine.data.CubeInstanceKeyFactory.create(CubeInstanceKeyFactory.java:62)
      at com.collaxa.cube.engine.core.CubeInstanceFactory.create(CubeInstanceFactory.java:33)
      at com.collaxa.cube.engine.CubeEngine.createInstance(CubeEngine.java:2710)
      at com.collaxa.cube.engine.CubeEngine.createAndInvoke(CubeEngine.java:1075)
      at com.collaxa.cube.engine.bean.CubeEngineBean.createAndInvoke(CubeEngineBean.java:100)
      at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
      at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
      at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
      at java.lang.reflect.Method.invoke(Method.java:324)
      at org.jboss.ejb.StatelessSessionContainer$ContainerInterceptor.invoke(StatelessSessionContainer.java:606)
      at org.jboss.resource.connectionmanager.CachedConnectionInterceptor.invoke(CachedConnectionInterceptor.java:186)
      at org.jboss.ejb.plugins.StatelessSessionInstanceInterceptor.invoke(StatelessSessionInstanceInterceptor.java:77)
      at org.jboss.ejb.plugins.AbstractTxInterceptor.invokeNext(AbstractTxInterceptor.java:108)
      at org.jboss.ejb.plugins.TxInterceptorCMT.runWithTransactions(TxInterceptorCMT.java:237)
      at org.jboss.ejb.plugins.TxInterceptorCMT.invoke(TxInterceptorCMT.java:101)
      at org.jboss.ejb.plugins.SecurityInterceptor.invoke(SecurityInterceptor.java:130)
      at org.jboss.ejb.plugins.LogInterceptor.invoke(LogInterceptor.java:204)
      at org.jboss.ejb.plugins.ProxyFactoryFinderInterceptor.invoke(ProxyFactoryFinderInterceptor.java:154)
      at org.jboss.ejb.StatelessSessionContainer.invoke(StatelessSessionContainer.java:303)
      at org.jboss.ejb.Container.invoke(Container.java:680)
      at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:549)
      at org.jboss.invocation.local.LocalInvoker.invoke(LocalInvoker.java:100)
      at org.jboss.invocation.InvokerInterceptor.invoke(InvokerInterceptor.java:88)
      at org.jboss.proxy.TransactionInterceptor.invoke(TransactionInterceptor.java:77)
      at org.jboss.proxy.SecurityInterceptor.invoke(SecurityInterceptor.java:80)
      at org.jboss.proxy.ejb.StatelessSessionInterceptor.invoke(StatelessSessionInterceptor.java:109)
      at org.jboss.proxy.ClientContainer.invoke(ClientContainer.java:82)
      at $Proxy77.createAndInvoke(Unknown Source)
      at com.collaxa.client.dispatch.BaseDelegate.__asyncCreateAndInvoke(BaseDelegate.java:70)
      at com.cxdn.samples.HelloWorldDispatchDelegate.createAndInvoke(HelloWorldDispatchDelegate.java:59)
      at org.apache.jsp.ngDoInitiate_jsp._jspService(ngDoInitiate_jsp.java:144)
      at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:137)
      at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
      at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:204)
      at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:295)
      at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:241)
      at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
      at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:360)
      at org.mortbay.jetty.servlet.WebApplicationHandler.dispatch(WebApplicationHandler.java:272)
      at org.mortbay.jetty.servlet.Dispatcher.dispatch(Dispatcher.java:194)
      at org.mortbay.jetty.servlet.Dispatcher.include(Dispatcher.java:121)
      at org.apache.jasper.runtime.JspRuntimeLibrary.include(JspRuntimeLibrary.java:822)
      at org.apache.jsp.displayScenario_jsp._jspService(displayScenario_jsp.java:366)
      at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:137)
      at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
      at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:204)
      at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:295)
      at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:241)
      at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
      at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:360)
      at org.mortbay.jetty.servlet.WebApplicationHandler.dispatch(WebApplicationHandler.java:272)
      at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:550)
      at org.mortbay.http.HttpContext.handle(HttpContext.java:1655)
      at org.mortbay.jetty.servlet.WebApplicationContext.handle(WebApplicationContext.java:542)
      at org.mortbay.http.HttpContext.handle(HttpContext.java:1605)
      at org.mortbay.http.HttpServer.service(HttpServer.java:862)
      at org.jboss.jetty.Jetty.service(Jetty.java:497)
      at org.mortbay.http.HttpConnection.service(HttpConnection.java:752)
      at org.mortbay.http.HttpConnection.handleNext(HttpConnection.java:916)
      at org.mortbay.http.HttpConnection.handle(HttpConnection.java:769)
      at org.mortbay.http.SocketListener.handleConnection(SocketListener.java:202)
      at org.mortbay.util.ThreadedServer.handle(ThreadedServer.java:289)
      at org.mortbay.util.ThreadPool$PoolThread.run(ThreadPool.java:455)