Skip to Main Content

Java Database Connectivity (JDBC)

Announcement

For appeals, questions and feedback about Oracle Forums, please email oracle-forums-moderators_us@oracle.com. Technical questions should be asked in the appropriate category. Thank you!

Method return error using ojdbc8 12.2.0.1

Greenec-OracleJul 2 2020 — edited Jul 6 2020

Java: openjdk version "1.8.0_252"

JDBC: runtime(group: 'com.oracle.jdbc', name: 'ojdbc8', version: '12.2.0.1') { transitive = false }

DB: Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production

OS: Oracle Linux Server 7.8

Docker: Docker version 19.03.1-ol, build ead9442

Tomcat: 9.0.36

This error doesn't happen when I run the same code in a Docker container build/run on Windows but happens on a Linux CI/CD machine

Am I running the wrong OJDBC jar or something?

2020-07-02 23:13:00 ERROR HibernateUtil:136 - Initial SessionFactory creation failed.

java.lang.VerifyError: Bad return type

Exception Details:

  Location:

  oracle/jdbc/driver/T4C8TTIBlob.createTemporaryLob(Ljava/sql/Connection;ZI)Loracle/sql/Datum; @159: areturn

  Reason:

  Type 'oracle/sql/BLOB' (current frame, stack[0]) is not assignable to 'oracle/sql/Datum' (from method signature)

  Current Frame:

  bci: @159

  flags: { }

  locals: { 'oracle/jdbc/driver/T4C8TTIBlob', 'java/sql/Connection', integer, integer, 'oracle/sql/BLOB' }

  stack: { 'oracle/sql/BLOB' }

  Bytecode:

  0x0000000: 1d10 0ca0 0017 2ab6 0019 1100 9eb8 001f

  0x0000010: b600 23c0 0013 c000 13bf 013a 042a b600

  0x0000020: 272a 1400 28b5 002d 2a10 28bc 08b5 0031

  0x0000030: 2ab4 0031 0410 5454 2a04 b500 352a 1400

  0x0000040: 36b5 003a 2a1d b500 3e2a 1d85 b500 412a

  0x0000050: 04b5 0045 2a04 b500 482a b400 4cb4 0051

  0x0000060: 1123 28a1 001e 2a04 bc0a b500 552a b400

  0x0000070: 5503 1c99 0007 04a7 0004 034f 2a04 b500

  0x0000080: 582a b600 5b2a b400 31c6 0014 bb00 5d59

  0x0000090: 2bc0 005f 2ab4 0031 b700 623a 0419 04b0

  0x00000a0: 

  Stackmap Table:

  same_frame(@26)

  full_frame(@122,{Object[#2],Object[#100],Integer,Integer,Null},{Object[#101],Integer})

  full_frame(@123,{Object[#2],Object[#100],Integer,Integer,Null},{Object[#101],Integer,Integer})

  same_frame(@129)

  full_frame(@157,{Object[#2],Object[#100],Integer,Integer,Object[#93]},{}) at oracle.jdbc.driver.T4CConnection.logon(T4CConnection.java:529) ~[ojdbc8-12.2.0.1.jar:12.2.0.1.0]

at oracle.jdbc.driver.PhysicalConnection.connect(PhysicalConnection.java:688) ~[ojdbc8-12.2.0.1.jar:12.2.0.1.0]

at oracle.jdbc.driver.T4CDriverExtension.getConnection(T4CDriverExtension.java:39) ~[ojdbc8-12.2.0.1.jar:12.2.0.1.0]

at oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:691) ~[ojdbc8-12.2.0.1.jar:12.2.0.1.0]

at org.apache.tomcat.dbcp.dbcp2.DriverConnectionFactory.createConnection(DriverConnectionFactory.java:55) ~[tomcat-dbcp.jar:9.0.36]

at org.apache.tomcat.dbcp.dbcp2.PoolableConnectionFactory.makeObject(PoolableConnectionFactory.java:355) ~[tomcat-dbcp.jar:9.0.36]

at org.apache.tomcat.dbcp.dbcp2.BasicDataSource.validateConnectionFactory(BasicDataSource.java:114) ~[tomcat-dbcp.jar:9.0.36]

at org.apache.tomcat.dbcp.dbcp2.BasicDataSource.createPoolableConnectionFactory(BasicDataSource.java:664) ~[tomcat-dbcp.jar:9.0.36]

at org.apache.tomcat.dbcp.dbcp2.BasicDataSource.createDataSource(BasicDataSource.java:543) ~[tomcat-dbcp.jar:9.0.36]

at org.apache.tomcat.dbcp.dbcp2.BasicDataSource.getConnection(BasicDataSource.java:752) ~[tomcat-dbcp.jar:9.0.36]

This post has been answered by Greenec-Oracle on Jul 6 2020
Jump to Answer
Comments
Post Details
Added on Jul 2 2020
2 comments
892 views