Skontaktowaliśmy się z Oracle Support, a oni odpowiedzieli w następujący sposób (niestety nie mogę podać linku do odpowiedzi, ponieważ potrzebne jest konto Oracle Support Account):
Nowe zachowanie działa zgodnie z przeznaczeniem :
Obejścia zapewniły mi pracę:
Obejście nr 1: Zmodyfikuj aplikację, aby nie wstawiać składnika czasu (np. za pomocą statycznego UtilMethod)
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();
}
Obejście nr 2: Pobierz i zastosuj poprawkę 19297927 z MOS:(My Oracle Support)
- Kliknij kartę Poprawki i aktualizacje.
- Wprowadź powyższy numer poprawki i kliknij Szukaj.
- Kliknij na numer patcha odpowiadający Twojej platformie z listy
- Kliknij przycisk Pobierz, aby pobrać łatkę.
- Przeczytaj wszelkie stosowne uwagi przed pobraniem, a następnie kliknij przycisk Pobierz.
Po poprawce zastąp plik ojdb7.jar w %Oracle_Home%\oracle_common\modules\oracle.jdbc_12.1.0
i dodaj -Doracle.jdbc.DateZeroTime=true
do argumentów JVM