I?m moving my development environment from Weblogic 6.1 to Weblogic
7.0, however, after migrating to 7.0, I encountered an error when
trying to log into the application - This is the error message:
?java.sql.SQLException: Connection has already been created in this tx
context for pool named ejbPool. Illegal attempt to create connection
from another pool: idmsPool?
When I encountered the error I was using a non-XA JDBC
driver(oracle.jdbc.driver.OracleDriver) for each of my connection
pools(We have four connection pools). Because of the error, I started
to use an XA JDBC driver(oracle.jdbc.xa.client.OracleXADataSource),
but now I?m encountering an new error at startup -
The Container-Managed Persistence Entity EJB failed while creating
its SQL Type Map. The error was:
XA error: XAER_RMERR : A resource manager error has occured in the
transaction branch start() failed on resource 'ejbPool': XAER_RMERR
: A resource manager error has occured in the transaction branch
oracle.jdbc.xa.OracleXAException
at oracle.jdbc.xa.OracleXAResource.checkError(OracleXAResource.java:1157)
at oracle.jdbc.xa.client.OracleXAResource.start(OracleXAResource.java:295)
at weblogic.jdbc.jta.VendorXAResource.start(VendorXAResource.java:41)
at weblogic.jdbc.jta.DataSource.start(DataSource.java:577)
at weblogic.transaction.internal.ServerResourceInfo.start(ServerResourceInfo.java:1178)
at weblogic.transaction.internal.ServerResourceInfo.xaStart(ServerResourceInfo.java:1121)
at weblogic.transaction.internal.ServerResourceInfo.enlist(ServerResourceInfo.java:287)
at weblogic.transaction.internal.ServerTransactionImpl.enlistResource(ServerTransactionImpl.java:407)
at weblogic.jdbc.jta.DataSource.enlist(DataSource.java:1157)
at weblogic.jdbc.jta.DataSource.refreshXAConnAndEnlist(DataSource.java:1109)
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(ConnectionImpl.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(TableVerifier.java:381)
at weblogic.ejb20.utils.TableVerifier.verifyTableExistsAndCreateMaybe(TableVerifier.java:432)
at weblogic.ejb20.cmp.rdbms.RDBMSPersistenceManager.verifyTablesExist(RDBMSPersistenceManager.java:1119)
at weblogic.ejb20.cmp.rdbms.RDBMSPersistenceManager.setup(RDBMSPersistenceManager.java:150)
at weblogic.ejb20.manager.BaseEntityManager.setupPM(BaseEntityManager.java:208)
at weblogic.ejb20.manager.BaseEntityManager.setup(BaseEntityManager.java:178)
at weblogic.ejb20.manager.DBManager.setup(DBManager.java:158)
at weblogic.ejb20.manager.ROManager.setup(ROManager.java:106)
at weblogic.ejb20.deployer.ClientDrivenBeanInfoImpl.activate(ClientDrivenBeanInfoImpl.java:944)
----------------------------------------------------------------------------
I found this problem documented in BEA's support site:
http://support.bea.com/application?namespace=askbea&origin=ask_bea_answer.jsp&event=link.view_answer_page_clfydoc&answerpage=solution&page=wls%2FS-20733.htm
.
According to the solution we are not using the proper JVM on our
database, however, we have never installed an internal JVM for Oracle,
so I?m sure this is why we are seeing the error. Does anyone know if
the ?oracle.jdbc.xa.client.OracleXADataSource? driver requires java to
be running in the database? I'd like to know for sure, before I move
forward with any installs.
Any help would be greatly appreciated.
Thanks,
~ derek |