【问题标题】:Protocol Violation. Oracle JDBC Driver issue违反协议。 Oracle JDBC 驱动程序问题
【发布时间】:2013-08-16 04:15:35
【问题描述】:

有人可以帮助解决下一个异常:

[2013.08.14 09:01:56:173] ERROR: org.springframework.jdbc.UncategorizedSQLException: PreparedStatementCallback; uncategorized SQLException for SQL [INSERT INTO INDICATOR_VALUES(ID, VALUE, REF_CLIENT_ID, REF_MANAGING_INDICATOR_ID) VALUES(INDICATOR_VALUE_ID_SEQUENCE.NEXTVAL, ?, ?, ?)]; SQL state [99999]; error code [17401]; Protocol violation; nested exception is java.sql.BatchUpdateException: Protocol violation
at org.springframework.jdbc.support.AbstractFallbackSQLExceptionTranslator.translate(AbstractFallbackSQLExceptionTranslator.java:83)
at org.springframework.jdbc.support.AbstractFallbackSQLExceptionTranslator.translate(AbstractFallbackSQLExceptionTranslator.java:80)
at org.springframework.jdbc.support.AbstractFallbackSQLExceptionTranslator.translate(AbstractFallbackSQLExceptionTranslator.java:80)
at org.springframework.jdbc.core.JdbcTemplate.execute(JdbcTemplate.java:603)
at org.springframework.jdbc.core.JdbcTemplate.execute(JdbcTemplate.java:615)
at org.springframework.jdbc.core.JdbcTemplate.batchUpdate(JdbcTemplate.java:884)
at com.cci.commons.dao.BaseDAO.batchUpdate(BaseDAO.java:186)

ORACLE 版本:Oracle Database 11g Enterprise Edition Release 11.2.0.2.0 - 64bit Production

JAVA:1.6.0_29-b11

JDBC驱动:ojdbc6.jar

Manifest-Version: 1.0
Ant-Version: Apache Ant 1.6.5
Created-By: 1.5.0_24-rev-b08 (Sun Microsystems Inc.)
Implementation-Vendor: Oracle Corporation
Implementation-Title: JDBC
Implementation-Version: 11.2.0.2.0
Repository-Id: JAVAVM_11.2.0.2.0_LINUX_100812.1
Specification-Vendor: Sun Microsystems Inc.
Specification-Title: JDBC
Specification-Version: 4.0
Main-Class: oracle.jdbc.OracleDriver
sealed: true

Name: oracle/sql/converter/
Sealed: false

Name: oracle/sql/
Sealed: false

Name: oracle/sql/converter_xcharset/
Sealed: false

【问题讨论】:

  • 我在 5 分钟内收到此错误 400 多次,之前或之后从未见过它......我猜我的问题是零星的网络故障。
  • 我又遇到了这个问题。一分半钟内发生 124 个异常,然后日志对此错误保持沉默。另一个网络故障?

标签: oracle jdbc


【解决方案1】:

原来问题的原因是 Oracle 用户的密码。已经快到期了。 Oracle用户密码重置错误消失后。

【讨论】:

    【解决方案2】:

    在您提交数据库时,有时它可能与内存不足有关。提交数据库需要一些内存,如果 jvm 达到最大内存,它会抛出 ProtocolViolationException。转储内存以调查根本原因很有用。

    【讨论】:

      猜你喜欢
      • 2011-06-08
      • 2017-07-15
      • 2014-05-12
      • 2021-09-27
      • 2010-10-05
      • 2012-03-10
      • 1970-01-01
      • 2020-06-05
      • 2011-06-23
      相关资源
      最近更新 更多