XA problem with JBoss 4.0.2 and MS SQL Server 2005 JDBC driv
danlee May 23, 2006 11:59 AMApp Server: JBoss 4.0.2
Java: Sun JDK 1.4.2_11
JDBC: MS SQL Server 2005 JDBC Driver
Database: MS SQL Server 2000 SP4
I am getting an exception during XA transaction. Here is my XA ds.xml configuration. Is there anything I am missing in the XA data source configuration? Any help would be appreciated.
<datasources> <xa-datasource> <jndi-name>os1DSXA</jndi-name> <use-java-context>false</use-java-context> <track-connection-by-tx/> <isSameRM-override-value>false</isSameRM-override-value> <xa-datasource-class>com.microsoft.sqlserver.jdbc.SQLServerXADataSource</xa-datasource-class> <xa-datasource-property name="ServerName">localhost</xa-datasource-property> <xa-datasource-property name="DatabaseName">os1</xa-datasource-property> <user-name>sa</user-name> <password>password</password> <metadata> <type-mapping>MS SQLSERVER2000</type-mapping> </metadata> </xa-datasource> </datasources>
13:38:56,578 INFO [TxConnectionManager] Could not enlist in transaction on entering meta-aware object!
javax.transaction.SystemException: Could not get XAResource from ManagedConnection!java.lang.IllegalStateException: Alre
ady committed. TransactionImpl:XidImpl[FormatId=257, GlobalId=filenet-qrsvl2d/15, BranchQual=, localId=15]
at org.jboss.resource.connectionmanager.TxConnectionManager$TxConnectionEventListener.enlist(TxConnectionManager
.java:441)
at org.jboss.resource.connectionmanager.TxConnectionManager.managedConnectionReconnected(TxConnectionManager.jav
a:322)
at org.jboss.resource.connectionmanager.BaseConnectionManager2.reconnectManagedConnection(BaseConnectionManager2
.java:583)
at org.jboss.resource.connectionmanager.BaseConnectionManager2.allocateConnection(BaseConnectionManager2.java:45
0)
at org.jboss.resource.connectionmanager.BaseConnectionManager2$ConnectionManagerProxy.allocateConnection(BaseCon
nectionManager2.java:874)
at org.jboss.resource.adapter.jdbc.WrapperDataSource.getConnection(WrapperDataSource.java:103)
at com.filenet.engine.context.ServerCallContext$GetConnection.run(ServerCallContext.java:771)
at java.security.AccessController.doPrivileged(Native Method)
at javax.security.auth.Subject.doAs(Subject.java:379)
.....(more stack trace)
at org.jboss.tm.TransactionImpl.doAfterCompletion(TransactionImpl.java:1419)
at org.jboss.tm.TransactionImpl.completeTransaction(TransactionImpl.java:1091)
at org.jboss.tm.TransactionImpl.commit(TransactionImpl.java:349)
at org.jboss.ejb.plugins.TxInterceptorCMT.endTransaction(TxInterceptorCMT.java:486)
at org.jboss.ejb.plugins.TxInterceptorCMT.runWithTransactions(TxInterceptorCMT.java:396)
at org.jboss.ejb.plugins.TxInterceptorCMT.invoke(TxInterceptorCMT.java:166)
at org.jboss.ejb.plugins.SecurityInterceptor.invoke(SecurityInterceptor.java:139)
at org.jboss.ejb.plugins.LogInterceptor.invoke(LogInterceptor.java:192)
at org.jboss.ejb.plugins.ProxyFactoryFinderInterceptor.invoke(ProxyFactoryFinderInterceptor.java:122)
at org.jboss.ejb.SessionContainer.internalInvoke(SessionContainer.java:624)
at org.jboss.ejb.Container.invoke(Container.java:873)
at org.jboss.ejb.plugins.local.BaseLocalProxyFactory.invoke(BaseLocalProxyFactory.java:413)
at org.jboss.ejb.plugins.local.StatelessSessionProxy.invoke(StatelessSessionProxy.java:88)