Inconsistent Catalog View by reading Synonyms on Oracle-objects via JDBC [message #92395] |
Tue, 29 June 2004 02:11 |
Hannes Cronauer
Messages: 1 Registered: June 2004
|
Junior Member |
|
|
Hi,
We have implemented the following scenario (Oracle 9.2):
At Schema S1 we created an Oracle-Type T1 and a procedure P1 that works with type T1.
At schema S2 we created synonyms for type S1.T1 -> synonym T2 and for procedure S1.P1 -> synonym P2.
For All Objects S1 granted the execute-privileg to S2.
Connecting via SQL*PLUS to S1 and invoking P1 the code works.
Also connecting via SQL*PLUS to S2 the Code works on then synonyms.
Connectin via JDBC to S1 the codes works as well on the original objects.
But connecting via JDBC to S2 we always got the error:
Inconsistent Catalog View
I think it may have to do with the synonyms.
It looks that the JDBC-Driver can't get information on the Type-Object from then synonym
Did anybody have an idea, what's wrong with our scenario?
Thanks a lot
Hannes
de.volkswagen.ipad.util.exceptions.WrappingException: Interner Fehler: Inconsistent catalog view
java.sql.SQLException: Interner Fehler: Inconsistent catalog view
at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:134)
at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:179)
at oracle.sql.StructDescriptor.initMetaData1_9_0(StructDescriptor.java:1838)
at oracle.sql.StructDescriptor.initMetaData1(StructDescriptor.java:1782)
at oracle.sql.StructDescriptor.isInstantiable(StructDescriptor.java:1027)
at oracle.sql.STRUCT.<init>(STRUCT.java:115)
at oracle.sql.OracleSQLOutput.getSTRUCT(OracleSQLOutput.java:122)
at oracle.sql.STRUCT.toSTRUCT(STRUCT.java:620)
at oracle.jdbc.driver.OraclePreparedStatement.setObject(OraclePreparedStatement.java:2874)
at oracle.jdbc.driver.OraclePreparedStatement.setObject(OraclePreparedStatement.java:3015)
at com.ibm.ejs.cm.proxy.PreparedStatementProxy.setObject(PreparedStatementProxy.java:210)
at de.volkswagen.ipad.eai.db.SQLArrayExecuter.executeSPCallWithSQLData(SQLArrayExecuter.java:53)
at de.volkswagen.ipad.eai.db.SQLExecuterTest.testExecuteSPCallWithSQLData(SQLExecuterTest.java:126)
at java.lang.reflect.Method.invoke(Native Method)
at junit.framework.TestCase.runTest(TestCase.java:154)
at junit.framework.TestCase.runBare(TestCase.java:127)
at org.apache.cactus.ServletTestCase.runCactusTest(ServletTestCase.java:295)
at org.apache.cactus.ServletTestCase.runBare(ServletTestCase.java:263)
at org.apache.cactus.server.AbstractWebTestCaller.doTest(AbstractWebTestCaller.java:156)
at org.apache.cactus.server.AbstractWebTestController.handleRequest_aroundBody0(AbstractWebTestController.java:130)
at org.apache.cactus.server.AbstractWebTestController.handleRequest_aroundBody1$advice(AbstractWebTestController.java:158)
at org.apache.cactus.server.AbstractWebTestController.handleRequest(AbstractWebTestController.java)
at org.apache.cactus.server.ServletTestRedirector.doPost_aroundBody2(ServletTestRedirector.java:138)
at org.apache.cactus.server.ServletTestRedirector.doPost_aroundBody3$advice(ServletTestRedirector.java:158)
at org.apache.cactus.server.ServletTestRedirector.doPost(ServletTestRedirector.java)
at org.apache.cactus.server.ServletTestRedirector.doGet_aroundBody0(ServletTestRedirector.java:109)
at org.apache.cactus.server.ServletTestRedirector.doGet_aroundBody1$advice(ServletTestRedirector.java:158)
at org.apache.cactus.server.ServletTestRedirector.doGet(ServletTestRedirector.java)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:740)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at com.ibm.servlet.engine.webapp.StrictServletInstance.doService(ServletManager.java:827)
at com.ibm.servlet.engine.webapp.StrictLifecycleServlet._service(StrictLifecycleServlet.java:167)
at com.ibm.servlet.engine.webapp.IdleServletState.service(StrictLifecycleServlet.java:297)
at com.ibm.servlet.engine.webapp.StrictLifecycleServlet.service(StrictLifecycleServlet.java:110)
at com.ibm.servlet.engine.webapp.ServletInstance.service(ServletManager.java:472)
at com.ibm.servlet.engine.webapp.ValidServletReferenceState.dispatch(ServletManager.java:1012)
at com.ibm.servlet.engine.webapp.ServletInstanceReference.dispatch(ServletManager.java:913)
at com.ibm.servlet.engine.webapp.WebAppRequestDispatcher.handleWebAppDispatch(WebAppRequestDispatcher.java:665)
at com.ibm.servlet.engine.webapp.WebAppRequestDispatcher.dispatch(WebAppRequestDispatcher.java:331)
at com.ibm.servlet.engine.webapp.WebAppRequestDispatcher.forward(WebAppRequestDispatcher.java:117)
at com.ibm.servlet.engine.srt.WebAppInvoker.doForward(WebAppInvoker.java:124)
at com.ibm.servlet.engine.srt.WebAppInvoker.handleInvocationHook(WebAppInvoker.java:218)
at com.ibm.servlet.engine.invocation.CachedInvocation.handleInvocation(CachedInvocation.java:67)
at com.ibm.servlet.engine.invocation.CacheableInvocationContext.invoke(CacheableInvocationContext.java:106)
at com.ibm.servlet.engine.srp.ServletRequestProcessor.dispatchByURI(ServletRequestProcessor.java:125)
at com.ibm.servlet.engine.oselistener.OSEListenerDispatcher.service(OSEListener.java:315)
at com.ibm.servlet.engine.http11.HttpConnection.handleRequest(HttpConnection.java:60)
at com.ibm.ws.http.HttpConnection.readAndHandleRequest(HttpConnection.java:323)
at com.ibm.ws.http.HttpConnection.run(HttpConnection.java:252)
at com.ibm.ws.util.CachedThread.run(ThreadPool.java:137)
|
|
|
|
|
|