Estava tendo problemas com o Double no Oracle.
A minha máquina estava com configuração regional do Brasil e o oracle como EUA.
Troquei a minha máquina para formato de EUA e não tive mais problemas de conversão.
O meu Regional Options esta configurado em English(United States) e a configuração para short date esta MM/dd/yyyy.
Eu verifiquei no banco o NLS_DATE_FORMAT está DD-MON-YY. Isso não é o formato americano?
Achei o problema. Era falta de atenção minha.
O problema não era o set no parametro era em um get.
Mais abaixo tinha um parametro varchar2 e eu dei um
registerOutParameter(5, Types.DATE), era isso que causava o erro na chamada do metodo execute().