Nos pusimos en contacto con el soporte de Oracle y respondieron lo siguiente (lamentablemente, no puedo proporcionar un enlace a la respuesta porque se necesita una cuenta de soporte de Oracle):
El nuevo comportamiento funciona según lo previsto :
Las soluciones alternativas me proporcionaron trabajo:
Solución alternativa n.º 1: Modifique la aplicación para que no inserte el componente de tiempo (por ejemplo, con un UtilMethod estático)
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();
}
Solución alternativa n.º 2: Descargue y aplique el parche 19297927 de MOS:(My Oracle Support)
- Haga clic en la pestaña Parches y actualizaciones.
- Ingrese el número de parche anterior y haga clic en Buscar.
- Haga clic en el número de parche correspondiente a su plataforma de la lista
- Haga clic en el botón Descargar para descargar el parche.
- Lea las notas correspondientes antes de descargar, luego haga clic en el botón Descargar.
Después de parchear, reemplace ojdb7.jar en %Oracle_Home%\oracle_common\modules\oracle.jdbc_12.1.0
y agregue -Doracle.jdbc.DateZeroTime=true
a sus argumentos JVM