"Frank Neumann" wrote
I could imagine that there is no global (container- or user-) transaction
running when you try to access the Oracle DataSource.
Because Oracle's XA datasource cannot be used in a local transaction
environment (this is a bug, it should according the specs), you might want
to try using a data source based on a pooled connection rather than an XA
connection for your operation.
My configuration:
1) IBM Websphere Application Server 5.0.2
2) database: Oracle9i release 2
3) Oracle JDBC DataSource (XA is enabled)
4) I am using JTA transactions: UserTransaction
Can anybody explain the meaning of this message:
"Failed to start the transaction association"
This stack trace shows what is happening:
java.sql.SQLException: DSRA9002E: ResourceException with error code null:
javax.resource.ResourceException: enlist: caught Exception
at
com.ibm.ejs.j2c.XATransactionWrapper.enlist(XATransactionWrapper.java:841)
at
com.ibm.ejs.j2c.ConnectionEventListener.interactionPending(ConnectionEventLi
stener.java:743)
at
com.ibm.ws.rsadapter.spi.WSRdbManagedConnectionImpl.processInteractionPendin
gEvent(WSRdbManagedConnectionImpl.java:1299)
at
com.ibm.ws.rsadapter.jdbc.WSJdbcConnection.beginTransactionIfNecessary(WSJdb
cConnection.java:328)
at
com.ibm.ws.rsadapter.jdbc.WSJdbcConnection.createStatement(WSJdbcConnection.
java:697)
at
com.ibm.ws.rsadapter.jdbc.WSJdbcConnection.createStatement(WSJdbcConnection.
java:673)
at foobar.movie.MovieUtil.dropMovieTable(MovieUtil.java:68)
at foobar.movie.demo.Setup.execute(Setup.java:33)
at foobar.movie.demo.DemoServlet.doGet(DemoServlet.java:29)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:740)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at
com.ibm.ws.webcontainer.servlet.StrictServletInstance.doService(StrictServle
tInstance.java:110)
at
com.ibm.ws.webcontainer.servlet.StrictLifecycleServlet._service(StrictLifecy
cleServlet.java:174)
at
com.ibm.ws.webcontainer.servlet.IdleServletState.service(StrictLifecycleServ
let.java:313)
at
com.ibm.ws.webcontainer.servlet.StrictLifecycleServlet.service(StrictLifecyc
leServlet.java:116)
at
com.ibm.ws.webcontainer.servlet.ServletInstance.service(ServletInstance.java
:283)
at
com.ibm.ws.webcontainer.servlet.ValidServletReferenceState.dispatch(ValidSer
vletReferenceState.java:42)
at
com.ibm.ws.webcontainer.servlet.ServletInstanceReference.dispatch(ServletIns
tanceReference.java:40)
at
com.ibm.ws.webcontainer.webapp.WebAppRequestDispatcher.handleWebAppDispatch(
WebAppRequestDispatcher.java:948)
at
com.ibm.ws.webcontainer.webapp.WebAppRequestDispatcher.dispatch(WebAppReques
tDispatcher.java:530)
at
com.ibm.ws.webcontainer.webapp.WebAppRequestDispatcher.forward(WebAppRequest
Dispatcher.java:176)
at
com.ibm.ws.webcontainer.srt.WebAppInvoker.doForward(WebAppInvoker.java:79)
at
com.ibm.ws.webcontainer.srt.WebAppInvoker.handleInvocationHook(WebAppInvoker
.java:201)
at
com.ibm.ws.webcontainer.cache.invocation.CachedInvocation.handleInvocation(C
achedInvocation.java:71)
at
com.ibm.ws.webcontainer.srp.ServletRequestProcessor.dispatchByURI(ServletReq
uestProcessor.java:182)
at
com.ibm.ws.webcontainer.oselistener.OSEListenerDispatcher.service(OSEListene
r.java:334)
at
com.ibm.ws.webcontainer.http.HttpConnection.handleRequest(HttpConnection.jav
a:56)
at
com.ibm.ws.http.HttpConnection.readAndHandleRequest(HttpConnection.java:610)
at com.ibm.ws.http.HttpConnection.run(HttpConnection.java:431)
at com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java(Compiled Code))
-------- chained exception -------
javax.transaction.SystemException: Failed to start the transaction
association.
at
com.ibm.ejs.jts.jta.TransactionImpl.enlistResource(TransactionImpl.java:782)
at com.ibm.ejs.jts.jta.JTSXA.enlist(JTSXA.java:998)
at
com.ibm.ejs.j2c.XATransactionWrapper.enlist(XATransactionWrapper.java:740)
at
com.ibm.ejs.j2c.ConnectionEventListener.interactionPending(ConnectionEventLi
stener.java:743)
at
com.ibm.ws.rsadapter.spi.WSRdbManagedConnectionImpl.processInteractionPendin
gEvent(WSRdbManagedConnectionImpl.java:1299)
at
com.ibm.ws.rsadapter.jdbc.WSJdbcConnection.beginTransactionIfNecessary(WSJdb
cConnection.java:328)
at
com.ibm.ws.rsadapter.jdbc.WSJdbcConnection.createStatement(WSJdbcConnection.
java:697)
at
com.ibm.ws.rsadapter.jdbc.WSJdbcConnection.createStatement(WSJdbcConnection.
java:673)
at foobar.movie.MovieUtil.dropMovieTable(MovieUtil.java:68)
at foobar.movie.demo.Setup.execute(Setup.java:33)
at foobar.movie.demo.DemoServlet.doGet(DemoServlet.java:29)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:740)