También puede intentar verificar la versión del controlador Oracle jdbc y la base de datos Oracle. Justo hoy tuve este problema al usar ojdbc6.jar (versión 11.2.0.3.0) para conectarme a un servidor Oracle 9.2.0.4.0. Reemplazarlo con ojdbc6.jar versión 11.1.0.7.0 resolvió el problema.
También logré que la versión 11.2.0.3.0 de ojdbc6.jar se conectara sin errores al agregar oracle.jdbc.timezoneAsRegion=false
en el archivo oracle/jdbc/defaultConnectionProperties.properties (dentro del jar). Encontré esta solución aquí (enlace roto)
Luego, se puede agregar -Doracle.jdbc.timezoneAsRegion=false
a la línea de comando, o AddVMOption -Doracle.jdbc.timezoneAsRegion=false
en archivos de configuración que usan esta notación.
También puede hacer esto mediante programación, p. con System.setProperty
.
En algunos casos, puede agregar la variable de entorno por conexión si está permitido (SQL Developer permite esto en las propiedades de conexión "Avanzadas"; verifiqué que funciona cuando me conecto a una base de datos que no tiene el problema y uso un enlace de base de datos a una base de datos que tiene).