使用Oracle的ojdbc7 Thin驱动程序“ {product = RDBMS没有消息文件”

时间:2019-10-15 14:52:51

标签: oracle jdbc ojdbc

我正在Web应用程序中使用Oracle的ojdbc7 瘦驱动程序(12.1.0.2)来访问Oracle 12.1数据库服务器。

这在查询数据库和执行操作方面效果很好。 但是,当数据库引发合理的错误时(例如以下情况,当抱怨打开的游标过多时),由于缺少消息文件 ,该错误中的错误消息是不完整的:

java.sql.SQLException: ORA-01000: Message 1000 not found; No message file for product=RDBMS, facility=ORA

        at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:450)
        at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:399)
        at oracle.jdbc.driver.T4C8Oall.processError(T4C8Oall.java:1059)
        at oracle.jdbc.driver.T4CTTIfun.receive(T4CTTIfun.java:522)
        at oracle.jdbc.driver.T4CTTIfun.doRPC(T4CTTIfun.java:257)
        at oracle.jdbc.driver.T4C8Oall.doOALL(T4C8Oall.java:587)
        at oracle.jdbc.driver.T4CPreparedStatement.doOall8(T4CPreparedStatement.java:225)
        at oracle.jdbc.driver.T4CPreparedStatement.doOall8(T4CPreparedStatement.java:53)
        at oracle.jdbc.driver.T4CPreparedStatement.executeForDescribe(T4CPreparedStatement.java:774)
        at oracle.jdbc.driver.OracleStatement.executeMaybeDescribe(OracleStatement.java:925)
        at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:1111)
        at oracle.jdbc.driver.OraclePreparedStatement.executeInternal(OraclePreparedStatement.java:4798)
        at oracle.jdbc.driver.OraclePreparedStatement.executeQuery(OraclePreparedStatement.java:4845)
        at oracle.jdbc.driver.OraclePreparedStatementWrapper.executeQuery(OraclePreparedStatementWrapper.java:1501)
        at org.apache.commons.dbcp.DelegatingPreparedStatement.executeQuery(DelegatingPreparedStatement.java:96)
        at org.apache.commons.dbcp.DelegatingPreparedStatement.executeQuery(DelegatingPreparedStatement.java:96)
        at org.hibernate.jdbc.AbstractBatcher.getResultSet(AbstractBatcher.java:208)
        at org.hibernate.loader.Loader.getResultSet(Loader.java:1849)
        at org.hibernate.loader.hql.QueryLoader.iterate(QueryLoader.java:472)
        ... 16 more

搜索该特定的“ No message file ...”短语时,可以找到大量注释,但是基本上所有注释都与缺少/错误的ORACLE_ *环境设置有关,而这些环境设置没有指向本地Oracle-Client-Installaton。 但是,使用此处使用的瘦驱动程序,不需要本地客户端安装!

Oracle在JDBC-Developers-Guide中的状态:

  

JDBC Thin驱动程序完全用Java编写,因此它是   平台无关。另外,此驱动程序不需要任何   客户端上的其他Oracle软件。

那么,我在这里想念什么? 正确显示完整的错误消息有什么必要?

0 个答案:

没有答案