My Oracle Support Banner

SSL Exception when Invoking ODI 12.1.3 Procedure Containing the Jython Method "urllib.urlretrieve()" (Doc ID 2401361.1)

Last updated on MAY 29, 2018

Applies to:

Oracle Data Integrator - Version to [Release 12c]
Information in this document applies to any platform.


An Oracle Data Integrator (ODI) 12.1.3 Procedure implements the Jython method urllib.urlretrieve (url[, filename[, reporthook[, data]]]), as shown in the following example:

import urllib

urllib.urlretrieve ('', 'C:\xxx.csv')

After having enabled ODI Studio and J2EE Agent to use the Transport Layer Security (TLS) v1.2 by setting (see <Document 2233230.1> for ODI Studio, and <Document 1317507.1> for the J2EE Agent)...

... the execution of above Procedure fails, and the following error message is received:

ODI-1590: The execution of the script failed.
Caused By: org.apache.bsf.BSFException: exception from Jython:
Traceback (most recent call last):
File "<string>", line 3, in <module>
File "C:\Oracle\Middleware\Oracle_Home\odi\sdk\lib\Lib\", line 89, in urlretrieve
return _urlopener.retrieve(url, filename, reporthook, data)

IOError: [Errno socket error] sslerror(-1, 'SSL exception')
  at org.apache.bsf.engines.jython.JythonEngine.exec(
  at com.sunopsis.dwg.codeinterpretor.SnpScriptingInterpretor.execInBSFEngine(
  at com.sunopsis.dwg.codeinterpretor.SnpScriptingInterpretor.exec(
  at oracle.odi.runtime.agent.execution.interpreter.SessionTaskScriptingInterpretor.scripting(
  at oracle.odi.runtime.agent.execution.SessionTask.scripting(




To view full details, sign in with your My Oracle Support account.

Don't have a My Oracle Support account? Click to get started!

My Oracle Support provides customers with access to over a million knowledge articles and a vibrant support community of peers and Oracle experts.