Retorno da procedures (Java+Oracle)

Olá.
Existe um sistema em Delphi+Oracle aqui na empresa, e estamos precisando executar
algumas coisas em java. e estou enfrentando um problema, tenho uma procedure no Oracle,
que recebe 18 argumentos sendo que 5 são de retornos, como posso pegar esses valores de retorno na Procedure?

Já tentei varias formas e nada:

{?=call RP.PROC(?,?,?,?,?,?,?,?,?,?,.....)}


....
cs.registerOutParameter(2, Types.INTEGER);
cs.registerOutParameter(3, Types.INTEGER);
cs.registerOutParameter(4, Types.VARCHAR);
cs.registerOutParameter(7, Types.VARCHAR);
cs.registerOutParameter(9, Types.VARCHAR);

Erro:
RA-01008: nem todas as variáveis são limitadas.

qualquer dica é super válida. pois preciso pegar os 5 resultados que são retorno entre o 18.
Valeu.

cara…
vou dar uma olhadinha aqui certo como a gente usa a chamada de procedimentos e funcoes direto…
pq a nao usamos procedimentos, triggers… para deixar o sistema independente do banco!
tanto eh que rodamos em oracle… postgres… etc…

mas esse erro eh erro nas passagem de parametros…
ou vc esta passando argumentos demais ou a menos do que preciso!

vlw!