Oracle
 sql >> Teknologi Basis Data >  >> RDS >> Oracle

WSJDBCConnection tidak membungkus objek bertipe Oracle jdbc Connection

Saya baru saja menguji ini di WebSphere Liberty dan kode berikut berfungsi untuk saya:

@Resource(lookup = "jdbc/oracle")
private DataSource ds;

// ...

Connection conn = ds.getConnection();
OracleConnection oracleConn = conn.unwrap(oracle.jdbc.OracleConnection.class);

Server.xml saya terlihat seperti ini:

<dataSource jndiName="jdbc/oracle">
    <jdbcDriver libraryRef="oracleLib"/>
    <properties.oracle URL="${jdbc.URL}" user="${jdbc.user}" password="${jdbc.password}"/>
</dataSource>

<library id="oracleLib">
    <fileset dir="${server.config.dir}/oracle"/>
</library>

<application location="myApp.war" >
    <classloader commonLibraryRef="oracleLib"/>
</application>

Hal penting yang perlu diperhatikan di sini adalah penggunaan commonLibraryRef pada <classloader> elemen. Jika Anda menggunakan privateLibraryRef itu tidak akan berfungsi karena aplikasi dan sumber data yang ditentukan server akan menggunakan pemuat kelas yang terisolasi untuk memuat kelas Oracle JDBC.

Jika jawaban ini tidak membantu Anda, harap perbarui pertanyaan Anda dengan konfigurasi server.xml Anda, dan juga bagaimana Anda mendapatkan instance DataSource Anda .



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. di mana saya harus meletakkan sumber daya penginstal (file wxs, skrip dmg, ikon) dan cara mengonfigurasi maven antrun saat menggunakan aplikasi mandiri

  2. Menggunakan fungsi Oracle to_date untuk string tanggal dengan milidetik

  3. Mendapatkan kesalahan ORA - 00907 pada hal berikut di ON UPDATE

  4. RU atau RU?

  5. Menemukan jumlah karakter dan angka dalam string