Why you are binding out parameter (1) twice.cstmt.registerOutParameter(1, OracleTypes.NUMERIC);1.one after prepare call.2.one after parameter(9)Check that once.might be this the reason.you missing parameter 10. check once.