Discussion:
Oracle error
(too old to reply)
Daniel Cullender
2004-12-31 08:04:17 UTC
Permalink
Hi,

I cannot for the life of me work out why I am getting this error. This is produce from a "3 tiered" application. The client process puts a message on a JMS Q. A JMS event Event Generator fetches the message from the Q and passes it to the Message Broker. The first JPD listens on a MB channel where the EG forwards the message to.

It seems that this is where everything dies ... I cannot work out why. I think I am missing some internal DB table but the exception info is not very helpful (or my interpretation of it anyway). Any Idea's/suggestions would be greatly appreciated. The exception is below:

####<Dec 31, 2004 9:55:37 AM SAST> <Error> <EJB> <wblvh172.telkom.co.za> <mserver1> <ExecuteThread: '19' for queue: 'weblogic.kernel.Default'> <<anonymous>> <> <BEA-010026> <Exception occurred during commit of transaction Xid=BEA1-023334EDEDD1E5215559(6413099),Status=Rolled back. [Reason=javax.ejb.EJBException: SQLException on insert: java.sql.SQLException: ORA-00942: table or view does not exist
],numRepliesOwedMe=0,numRepliesOwedOthers=0,seconds since begin=0,seconds left=60,XAServerResourceInfo[JMS_mserver1_JMSStore]=(ServerResourceInfo[JMS_mserver1_JMSStore]=(state=rolledback,assigned=mserver1),xar=JMS_mserver1_JMSStore,re-Registered = false),XAServerResourceInfo[cgPool]=(ServerResourceInfo[cgPool]=(state=rolledback,assigned=mserver1),xar=cgPool,re-Registered = false),SCInfo[EIB+mserver1]=(state=rolledback),properties=({}),local properties=({modifiedListeners=[weblogic.ejb20.internal.TxManager$***@7fbf5a]}),OwnerTransactionManager=ServerTM[ServerCoordinatorDescriptor=(CoordinatorURL=mserver1+165.148.211.13:2002+EIB+t3+, XAResources={},NonXAResources={})],CoordinatorURL=mserver1+165.148.211.13:2002+EIB+t3+): javax.ejb.EJBException: SQLException on insert: java.sql.SQLException: ORA-00942: table or view does not exist

at com.bea.wlw.runtime.core.bean.BMPContainerBean.ejbStore(BMPContainerBean.java:1826)
at com.bea.wli.bpm.runtime.ProcessContainerBean.ejbStore(ProcessContainerBean.java:128)
at com.bea.wli.bpm.runtime.ProcessContainerBean.ejbStore(ProcessContainerBean.java:115)
at com.bea.wlwgen.PersistentContainer_ml4skm_Impl.ejbStore(PersistentContainer_ml4skm_Impl.java:149)
at weblogic.ejb20.manager.ExclusiveEntityManager.beforeCompletion(ExclusiveEntityManager.java:556)
at weblogic.ejb20.internal.TxManager$TxListener.beforeCompletion(TxManager.java:653)
at weblogic.transaction.internal.ServerSCInfo.callBeforeCompletions(ServerSCInfo.java:1010)
at weblogic.transaction.internal.ServerSCInfo.startPrePrepareAndChain(ServerSCInfo.java:115)
at weblogic.transaction.internal.ServerTransactionImpl.localPrePrepareAndChain(ServerTransactionImpl.java:1184)
at weblogic.transaction.internal.ServerTransactionImpl.globalPrePrepare(ServerTransactionImpl.java:1910)
at weblogic.transaction.internal.ServerTransactionImpl.internalCommit(ServerTransactionImpl.java:273)
at weblogic.transaction.internal.ServerTransactionImpl.commit(ServerTransactionImpl.java:244)
at weblogic.ejb20.internal.MDListener.execute(MDListener.java:400)
at weblogic.ejb20.internal.MDListener.onMessage(MDListener.java:262)
at weblogic.jms.client.JMSSession.onMessage(JMSSession.java:2678)
at weblogic.jms.client.JMSSession.execute(JMSSession.java:2598)
at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:219)
at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:178)
Caused by: java.lang.Exception: SQLException on insert: java.sql.SQLException: ORA-00942: table or view does not exist

at com.bea.wlw.runtime.core.bean.BMPContainerBean.doInsert(BMPContainerBean.java:1889)
at com.bea.wlw.runtime.core.bean.BMPContainerBean.ejbStore(BMPContainerBean.java:1806)
... 17 more
Caused by: java.sql.SQLException: ORA-00942: table or view does not exist

at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:125)
at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:305)
at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:272)
at oracle.jdbc.driver.T4C8Oall.receive(T4C8Oall.java:623)
at oracle.jdbc.driver.T4CPreparedStatement.doOall8(T4CPreparedStatement.java:181)
at oracle.jdbc.driver.T4CPreparedStatement.execute_for_rows(T4CPreparedStatement.java:543)
at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:1027)
at oracle.jdbc.driver.OraclePreparedStatement.executeInternal(OraclePreparedStatement.java:2885)
at oracle.jdbc.driver.OraclePreparedStatement.executeUpdate(OraclePreparedStatement.java:2957)
at weblogic.jdbc.wrapper.PreparedStatement.executeUpdate(PreparedStatement.java:115)
at com.bea.wlw.runtime.core.bean.BMPContainerBean$OracleDirectTableAccess.doStoreByInsert(BMPContainerBean.java:1045)
at com.bea.wlw.runtime.core.bean.BMPContainerBean.doInsert(BMPContainerBean.java:1849)
... 18 more
--------------- nested within: ------------------
weblogic.transaction.RollbackException: Unexpected exception in beforeCompletion: sync=weblogic.ejb20.internal.TxManager$***@7fbf5a
SQLException on insert: java.sql.SQLException: ORA-00942: table or view does not exist
- with nested exception:
[javax.ejb.EJBException: SQLException on insert: java.sql.SQLException: ORA-00942: table or view does not exist
]
at weblogic.transaction.internal.TransactionImpl.throwRollbackException(TransactionImpl.java:1644)
at weblogic.transaction.internal.ServerTransactionImpl.internalCommit(ServerTransactionImpl.java:323)
at weblogic.transaction.internal.ServerTransactionImpl.commit(ServerTransactionImpl.java:244)
at weblogic.ejb20.internal.MDListener.execute(MDListener.java:400)
at weblogic.ejb20.internal.MDListener.onMessage(MDListener.java:262)
at weblogic.jms.client.JMSSession.onMessage(JMSSession.java:2678)
at weblogic.jms.client.JMSSession.execute(JMSSession.java:2598)
at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:219)
at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:178)
Ignacio G. Dupont
2004-12-31 13:40:58 UTC
Permalink
Hi Daniel,

You could probably find which is the 'missing' table if you enable JDBC
logging in Weblogic's console.

You could also try with JDBC calls interception with apps like
JDBInsight or P6Spy (last one is free -as in freedom- (ASF license))
although you will have to tweak a bit your Weblogic config.xml in order
to change your jdbc driver(s) by the "wrapped(s)" one(s).

Regards.

Ignacio.

P.S. Happy new year!
Daniel Cullender
2005-01-03 12:27:21 UTC
Permalink
Thankyou. I will give it a bash.

Happy new year to you too!

Loading...