Kami telah menghubungi Dukungan Oracle dan mereka menjawab sebagai berikut (sayangnya saya tidak dapat memberikan tautan ke jawabannya karena Akun Dukungan Oracle diperlukan):
Perilaku baru berfungsi sebagaimana mestinya :
Solusinya memberikan pekerjaan untuk saya:
Solusi #1: Ubah aplikasi agar tidak memasukkan komponen waktu (misalnya dengan UtilMethod statis)
public static Date truncateTime(Date date) {
Calendar calendar = Calendar.getInstance();
calendar.setTime(date);
calendar.set(Calendar.HOUR_OF_DAY, 0);
calendar.set(Calendar.MINUTE, 0);
calendar.set(Calendar.SECOND, 0);
calendar.set(Calendar.MILLISECOND, 0);
return calendar.getTime();
}
Solusi #2: Unduh dan terapkan patch 19297927 dari MOS:(Dukungan Oracle Saya)
- Klik pada tab Patch &Pembaruan.
- Masukkan nomor patch di atas dan Klik Cari.
- Klik nomor patch yang sesuai dengan platform Anda dari daftar
- Klik tombol Unduh untuk mengunduh patch.
- Baca catatan yang berlaku sebelum mengunduh, lalu klik tombol Unduh.
Setelah patch ganti ojdb7.jar di %Oracle_Home%\oracle_common\modules\oracle.jdbc_12.1.0
dan tambahkan -Doracle.jdbc.DateZeroTime=true
ke Argumen JVM Anda