3 Replies Latest reply on Dec 20, 2002 11:10 PM by davidjencks

    Problem with XA datasource

    benoitm

      I am using JBoss 3.0.4 and the latest SAPDB driver which supports XA.

      Since I switched from LocalTx to XA, I get a NullPointerException in JBoss when I execute a statement that violates a database constrain (instead of a more meaningful SQLException).

      I would like to know if this is a problem in JBoss or a problem with the (rather new) SAPDB driver.

      Thank you.

      Benoit

      This is the stack trace:

      java.lang.NullPointerException
      at org.jboss.resource.adapter.jdbc.BaseManagedConnection.fireConnectionEvent(BaseManagedConnection.java:147)
      at org.jboss.resource.adapter.jdbc.xa.XAManagedConnection.fireConnectionEvent(XAManagedConnection.java:215)
      at org.jboss.resource.adapter.jdbc.xa.XAManagedConnection$1.connectionClosed(XAManagedConnection.java:127)
      at com.sap.dbtech.jdbcext.ConnectionListenerBag.sendCloseEvent(ConnectionListenerBag.java:62)
      at com.sap.dbtech.jdbcext.XAConnectionSapDB.sendCloseEvent(XAConnectionSapDB.java:378)
      at com.sap.dbtech.jdbcext.XAConnectionSapDB$XAClientConnectionSapDB.close(XAConnectionSapDB.java:522)
      at com.sap.dbtech.jdbcext.XAConnectionSapDB.closeLastOpenClient(XAConnectionSapDB.java:423)
      at com.sap.dbtech.jdbcext.XAConnectionSapDB.close(XAConnectionSapDB.java:90)
      at org.jboss.resource.adapter.jdbc.xa.XAManagedConnection.destroy(XAManagedConnection.java:189)
      at org.jboss.resource.connectionmanager.InternalManagedConnectionPool.doDestroy(InternalManagedConnectionPool.java:273)
      at org.jboss.resource.connectionmanager.InternalManagedConnectionPool.returnConnection(InternalManagedConnectionPool.java:160)
      at org.jboss.resource.connectionmanager.JBossManagedConnectionPool$BasePool.returnConnection(JBossManagedConnectionPool.java:335)
      at org.jboss.resource.connectionmanager.BaseConnectionManager2.returnManagedConnection(BaseConnectionManager2.java:494)
      at org.jboss.resource.connectionmanager.XATxConnectionManager$XAConnectionEventListener.connectionErrorOccurred(XATxConnectionManager.java:390)
      at org.jboss.resource.adapter.jdbc.BaseManagedConnection.fireConnectionEvent(BaseManagedConnection.java:156)
      at org.jboss.resource.adapter.jdbc.xa.XAManagedConnection.fireConnectionEvent(XAManagedConnection.java:215)
      at org.jboss.resource.adapter.jdbc.xa.XAManagedConnection$1.connectionErrorOccurred(XAManagedConnection.java:140)
      at com.sap.dbtech.jdbcext.ConnectionListenerBag.sendErrorEvent(ConnectionListenerBag.java:80)
      at com.sap.dbtech.jdbcext.XAConnectionSapDB.sendErrorEvent(XAConnectionSapDB.java:372)
      at com.sap.dbtech.jdbcext.XAConnectionSapDB$XAClientConnectionSapDB.exceptionOccurred(XAConnectionSapDB.java:468)
      at com.sap.dbtech.jdbcext.ClientPreparedStatementSapDB.exceptionOccured(ClientPreparedStatementSapDB.java:48)
      at com.sap.dbtech.jdbcext.ClientPreparedStatementSapDB.executeBatch(ClientPreparedStatementSapDB.java:400)
      at cirrus.hibernate.impl.BatchingBatcher.doExecuteBatch(BatchingBatcher.java:50)
      at cirrus.hibernate.impl.BatcherImpl.executeBatch(BatcherImpl.java:81)
      at cirrus.hibernate.impl.SessionImpl.executeAll(SessionImpl.java:1677)
      at cirrus.hibernate.impl.SessionImpl.execute(SessionImpl.java:1655)
      at cirrus.hibernate.impl.SessionImpl.flush(SessionImpl.java:1599)
      at com.kms.engine.objects.ObjectDataSource.update(ObjectDataSource.java:198)