U kunt ook proberen de versie van het Oracle jdbc-stuurprogramma en de Oracle-database te controleren. Vandaag had ik dit probleem toen ik ojdbc6.jar (versie 11.2.0.3.0) gebruikte om verbinding te maken met een Oracle 9.2.0.4.0-server. Vervanging door ojdbc6.jar versie 11.1.0.7.0 loste het probleem op.
Ik slaagde er ook in om ojdbc6.jar versie 11.2.0.3.0 verbinding te laten maken zonder fouten, door oracle.jdbc.timezoneAsRegion=false
toe te voegen in het bestand oracle/jdbc/defaultConnectionProperties.properties (in de jar). Vond deze oplossing hier (gebroken link)
Vervolgens kan men -Doracle.jdbc.timezoneAsRegion=false
toevoegen naar de opdrachtregel, of AddVMOption -Doracle.jdbc.timezoneAsRegion=false
in configuratiebestanden die deze notatie gebruiken.
U kunt dit ook programmatisch doen, b.v. met System.setProperty
.
In sommige gevallen kunt u de omgevingsvariabele per verbinding toevoegen als dat is toegestaan (SQL Developer staat dit toe in de "Geavanceerde" verbindingseigenschappen; ik heb geverifieerd dat het werkt bij het verbinden met een database die het probleem niet heeft en gebruik een databaselink naar een database die dat wel heeft).