Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

TxDataSources / XA Drivers

0 views
Skip to first unread message

Pete Hilfiker

unread,
Mar 18, 2003, 2:01:58 PM3/18/03
to

I am having major problems attempting to upgrade from WebLogic 6.1 to 7. After
installing and configuring WebLogic 7, my application wouldn't load, telling me
I needed to use TxDataSources instead of DataSources.

So I switched to TxDataSources and after increasing the Max Capacity in the pools,
I was able to get my application to load and run. However, whenever my application
tries to access two different pools in the same transaction, I get this runtime
error.


-----------------------------------------------------------------------------------
java.sql.SQLException: Connection has already been created in this tx context
fo
r pool named commcp. Illegal attempt to create connection from another pool: adm
cp
java.sql.SQLException: Connection has already been created in this tx context
fo
r pool named commcp. Illegal attempt to create connection from another pool: adm
cp
at weblogic.jdbc.jts.Driver.getExistingConnection(Driver.java:339)
at weblogic.jdbc.jts.Driver.connect(Driver.java:132)
at weblogic.jdbc.common.internal.RmiDataSource.getConnection(RmiDataSour
ce.java:265)
at weblogic.ejb20.cmp.rdbms.RDBMSPersistenceManager.getConnection(RDBMSP
ersistenceManager.java:698)
at dtpitb.adm.eb.conclude.ConcludeBean_8ki0z9__WebLogic_CMP_RDBMS.ejbFin
dByPrimaryKey(ConcludeBean_8ki0z9__WebLogic_CMP_RDBMS.java:968)
at java.lang.reflect.Method.invoke(Native Method)
at weblogic.ejb20.cmp.rdbms.RDBMSPersistenceManager.findByPrimaryKey(RDB
MSPersistenceManager.java:216)
at weblogic.ejb20.manager.BaseEntityManager.findByPrimaryKey(BaseEntityM
anager.java:755)
at weblogic.ejb20.manager.BaseEntityManager.localFindByPrimaryKey(BaseEn
tityManager.java:711)
at weblogic.ejb20.internal.EntityEJBLocalHome.findByPrimaryKey(EntityEJB
LocalHome.java:273)
at dtpitb.adm.eb.conclude.ConcludeBean_8ki0z9_LocalHomeImpl.findByPrimar
yKey(ConcludeBean_8ki0z9_LocalHomeImpl.java:109)
at dtpitb.adm.sb.common.SessionBeanCommon.getConclusion(SessionBeanCommo
n.java:237)
at dtpitb.adm.sb.reports.ADMReportsBean_l3bmj9_EOImpl.getConclusion(ADMR
eportsBean_l3bmj9_EOImpl.java:98)
at dtpitb.adm.webapp.worker.SearchDecisionHistory.processWork(SearchDeci
sionHistory.java:46)
at gov.nih.nci.itb.webapp.controller.Controller.service(Controller.java:
96)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at weblogic.servlet.internal.ServletStubImpl$ServletInvocationAction.run
(ServletStubImpl.java:1058)
at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubIm
pl.java:401)
at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubIm
pl.java:306)
at weblogic.servlet.internal.WebAppServletContext$ServletInvocationActio
n.run(WebAppServletContext.java:5445)
at weblogic.security.service.SecurityServiceManager.runAs(SecurityServic
eManager.java:780)
at weblogic.servlet.internal.WebAppServletContext.invokeServlet(WebAppSe
rvletContext.java:3105)
at weblogic.servlet.internal.ServletRequestImpl.execute(ServletRequestIm
pl.java:2588)
at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:213)
at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:189)
-----------------------------------------------------------------------------------

From what I understand, this meant that I needed to use an XA-supported Driver.
So I installed the Oracle Thin/XA Driver (oracle.jdbc.xa.client.OracleXADataSource)
instead of the regular Oracle Thin Driver I was using (oracle.jdbc.driver.OracleDriver).

After trying that, my application will not load, throwing a bunch of XA Exceptions
similar to the following:

-----------------------------------------------------------------------------------
XA error: XAER_RMERR : A resource manager error has occured in the transaction
b
ranch start() failed on resource 'admcp': XAER_RMERR : A resource manager error
has occured in the transaction branch
oracle.jdbc.xa.OracleXAException
at oracle.jdbc.xa.OracleXAResource.checkError(OracleXAResource.java:498)

at oracle.jdbc.xa.client.OracleXAResource.start(OracleXAResource.java:19
0)
at weblogic.jdbc.jta.VendorXAResource.start(VendorXAResource.java:41)
at weblogic.jdbc.jta.DataSource.start(DataSource.java:577)
at weblogic.transaction.internal.ServerResourceInfo.start(ServerResource
Info.java:1178)
at weblogic.transaction.internal.ServerResourceInfo.xaStart(ServerResour
ceInfo.java:1121)
at weblogic.transaction.internal.ServerResourceInfo.enlist(ServerResourc
eInfo.java:287)
at weblogic.transaction.internal.ServerTransactionImpl.enlistResource(Se
rverTransactionImpl.java:407)
at weblogic.jdbc.jta.DataSource.enlist(DataSource.java:1157)
at weblogic.jdbc.jta.DataSource.refreshXAConnAndEnlist(DataSource.java:1
109)
at weblogic.jdbc.jta.Connection.getXAConn(Connection.java:147)
at weblogic.jdbc.jta.Connection.prepareStatement(Connection.java:259)
at weblogic.jdbc.rmi.internal.ConnectionImpl.prepareStatement(Connection
Impl.java:139)
at weblogic.jdbc.rmi.SerialConnection.prepareStatement(SerialConnection.
java:92)
at weblogic.ejb20.utils.TableVerifier.checkTableAndColumns(TableVerifier
java:133)
at weblogic.ejb20.utils.TableVerifier.checkTableAndColumns(TableVerifier
java:79)
at weblogic.ejb20.utils.TableVerifier.verifyTableAndColumnsExist(TableVe
rifier.java:381)
at weblogic.ejb20.utils.TableVerifier.verifyTableExistsAndCreateMaybe(Ta
bleVerifier.java:432)
at weblogic.ejb20.cmp.rdbms.RDBMSPersistenceManager.verifyTablesExist(RD
BMSPersistenceManager.java:1119)
at weblogic.ejb20.cmp.rdbms.RDBMSPersistenceManager.setup(RDBMSPersisten
ceManager.java:150)
at weblogic.ejb20.manager.BaseEntityManager.setupPM(BaseEntityManager.ja
va:208)
at weblogic.ejb20.manager.BaseEntityManager.setup(BaseEntityManager.java
:178)
at weblogic.ejb20.manager.DBManager.setup(DBManager.java:158)
at weblogic.ejb20.deployer.ClientDrivenBeanInfoImpl.activate(ClientDrive
nBeanInfoImpl.java:944)
at weblogic.ejb20.deployer.EJBDeployer.activate(EJBDeployer.java:1317)
at weblogic.ejb20.deployer.EJBModule.activate(EJBModule.java:335)
at weblogic.j2ee.J2EEApplicationContainer.activateModule(J2EEApplication
Container.java:1662)
at weblogic.j2ee.J2EEApplicationContainer.activate(J2EEApplicationContai
ner.java:1087)
at weblogic.j2ee.J2EEApplicationContainer.activate(J2EEApplicationContai
ner.java:1074)
at weblogic.management.deploy.slave.SlaveDeployer.processPrepareTask(Sla
veDeployer.java:1110)
at weblogic.management.deploy.slave.SlaveDeployer.prepareUpdate(SlaveDep
loyer.java:730)
at weblogic.drs.internal.SlaveCallbackHandler$1.execute(SlaveCallbackHan
dler.java:24)
at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:213)
at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:189)
-----------------------------------------------------------------------------------

I now have decided I need advice.

Please advise.

Thanks,

Pete

Deepak Vohra

unread,
Mar 19, 2003, 5:53:57 PM3/19/03
to
0 new messages