Oracle
 sql >> Baza danych >  >> RDS >> Oracle

Migracja Java 11 - createConnectionBuilder() z PoolDataSourceImpl koliduje z createConnectionBuilder() z javax.sql.DataSource

To jest niezgodność interfejsu. javax.sql.DataSource definiuje metodę

default ConnectionBuilder createConnectionBuilder() throws SQLException

Zgodnie z umową wartość zwracana musi być typu ConnectionBuilder.

Jeśli spojrzysz na dokumentację oracle.ucp.jdbc.PoolDataSourceImpl, definiuje ona metodę jako

public UCPConnectionBuilder createConnectionBuilder()

natomiast oracle.ucp.jdbc.UCPConnectionBuilder nie jest podtypem java.sql.ConnectionBuilder .

Teraz, chyba że Oracle wyda nigdy wersję oracle.ucp.jdbc.UCPConnectionBuilder interfejs rozszerzający java.sql.ConnectionBuilder , nie będzie można zamienić UCP PoolDataSource na javax.sql.DataSource .

Najnowsza wersja w tym momencie wydaje się być UCP 19.3 , co nadal miałoby ten sam problem, co jest niefortunne, ponieważ 19.3 jest reklamowany jako zgodny z JDK11. Proszę zgłosić błąd dotyczący Oracle UCP, aby poinformować opiekunów o nowym uczestniku createConnectionBuilder w interfejsie DataSource.

Intrim, jeśli jest to wykonalne, możesz wrócić do korzystania z 11g wydania 2 UCP (nie 12, nie 19), które nie ma metody createConnectionBuilder w interfejsie PoolDataSource. Nie jest to idealna sytuacja, ponieważ rezygnujesz z dziesięcioletniej poprawy UCP, wracając do 11g.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. jak wywołać funkcję w funkcji plsql

  2. Jak załączyć plik z katalogu do wiadomości e-mail wysłanej za pomocą utl_smtp?

  3. Czy w MySQL jest jakaś funkcja taka jak poziom w Oracle?

  4. Kursor PL/SQL dla pętli

  5. Zapytanie optymalizujące:DBMS_METADATA.GET_DDL (Oracle)