Problem: Connecting to an Oracle 10g database via Oracle JDBC driver and Java 1.4.2, generates the following SQLException:
Establishing connection with jdbc:oracle:thin:@bomdev:1521:DEV1... Connected! java.sql.SQLException: Bigger type length than Maximum at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:125) at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:162) at oracle.jdbc.driver.DatabaseError.check_error(DatabaseError.java:885) at oracle.jdbc.driver.T4CMAREngine.buffer2Value(T4CMAREngine.java:2202) at oracle.jdbc.driver.T4CMAREngine.unmarshalUB4(T4CMAREngine.java:1150) at oracle.jdbc.driver.T4CMAREngine.unmarshalDALC(T4CMAREngine.java:2076) at oracle.jdbc.driver.T4C8TTIuds.unmarshal(T4C8TTIuds.java:132) at oracle.jdbc.driver.T4CTTIdcb.receiveCommon(T4CTTIdcb.java:126) at oracle.jdbc.driver.T4CTTIdcb.receiveFromRefCursor(T4CTTIdcb.java:104) at oracle.jdbc.driver.T4CResultSetAccessor.unmarshalOneRow(T4CResultSetAccessor.java:167) at oracle.jdbc.driver.T4CTTIrxd.unmarshal(T4CTTIrxd.java:792) at oracle.jdbc.driver.T4CTTIrxd.unmarshal(T4CTTIrxd.java:708) at oracle.jdbc.driver.T4C8Oall.receive(T4C8Oall.java:530) at oracle.jdbc.driver.T4CCallableStatement.doOall8(T4CCallableStatement.java:181) at oracle.jdbc.driver.T4CCallableStatement.execute_for_rows(T4CCallableStatement.java:784) at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:1027) at oracle.jdbc.driver.OraclePreparedStatement.executeInternal(OraclePreparedStatement.java:2885) at oracle.jdbc.driver.OraclePreparedStatement.execute(OraclePreparedStatement.java:2976) at oracle.jdbc.driver.OracleCallableStatement.execute(OracleCallableStatement.java:4112) at com.pnm.utils.banner.StoredProc.execute(StoredProc.java:61) at com.pnm.utils.banner.StoredProc.testAddress(StoredProc.java:186) at com.pnm.utils.banner.StoredProc.main(StoredProc.java:569) java.sql.SQLException: Protocol violation at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:125) at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:162) at oracle.jdbc.driver.DatabaseError.check_error(DatabaseError.java:885) at oracle.jdbc.driver.T4C7Ocommoncall.receive(T4C7Ocommoncall.java:136) at oracle.jdbc.driver.T4CConnection.logoff(T4CConnection.java:388) at oracle.jdbc.driver.PhysicalConnection.close(PhysicalConnection.java:1047) at com.pnm.utils.banner.StoredProc.closeConnection(StoredProc.java:70) at com.pnm.utils.banner.StoredProc.main(StoredProc.java:609)
Per the manifest in ojdbc14.jar:
Manifest-Version: 1.0 Implementation-Version: "Oracle JDBC Driver version - 10.1.0.3.0" Specification-Title: "Oracle JDBC driver classes for use with JDK1 .4" Specification-Version: "Oracle JDBC Driver version - 10.1.0.3.0" Implementation-Title: "ojdbc14.jar" Created-By: 1.2.2 (Sun Microsystems Inc.) Implementation-Time: "Thu Jul 15 02:16:50 2004" Implementation-Vendor: "Oracle Corporation" Specification-Vendor: "Oracle Corporation" .
Solution: Try an updated version of ojdbc14.jar which can be downloaded here. For this particular issue, the manifests for the following libraries resolved the exception:
Manifest-Version: 1.0 Implementation-Version: "Oracle JDBC Driver version - 10.1.0.5.0" Specification-Title: "Oracle JDBC driver classes for use with JDK1. 4" Specification-Version: "Oracle JDBC Driver version - 10.1.0.5.0" Implementation-Title: "ojdbc14.jar" Created-By: 1.2.2 (Sun Microsystems Inc.) Implementation-Time: "Wed Dec 28 05:06:13 2005" Implementation-Vendor: "Oracle Corporation" Specification-Vendor: "Oracle Corporation" .
and
Manifest-Version: 1.0 Specification-Title: Oracle JDBC driver classes for use with JDK14 Sealed: true Created-By: 1.4.2_08 (Sun Microsystems Inc.) Implementation-Title: ojdbc14.jar Specification-Vendor: Oracle Corporation Specification-Version: Oracle JDBC Driver version - "10.2.0.3.0" Implementation-Version: Oracle JDBC Driver version - "10.2.0.3.0" Implementation-Vendor: Oracle Corporation Implementation-Time: Fri Sep 29 09:43:24 2006 Name: oracle/sql/converter/ Sealed: false Name: oracle/sql/ Sealed: false Name: oracle/sql/converter_xcharset/ Sealed: false

0 Comments on “Bigger Type Length Than Maximum”
Leave a Comment
You must be logged in to post a comment.