Erro em PreparedStatement

Olá pessoal, no código abaixo:

[code]String sql = "UPDATE PARCELA_PRECATORIO SET " +
"VALOR_TOTAL_PARCELA=?, TIPO_PESSOA=?, DATA_PAGAMENTO=?, DATA_VENCIMENTO=?, " +
"ID_METODO=?, JUROS_ALIQUOTA=?, DATA_JUROS=?, NUMERO_MESES=?, TOTAL_JUROS=?, " +
"VALOR_TOTAL=?, VALOR_TOTAL_PARCELA_CORRIGIDO=?, DATA_TRANSFERENCIA=?, VALOR_CORRIGIDO=?, "+
"VALOR_PAGO_TRIBUNAL=? WHERE COD_PARCELAPRECATORIO=?";

    PreparedStatement ps=null;
    try{
        ps=con.prepareStatement(sql);
        ps.setDouble(1,valorTotalParcela);
        ps.setString(2,tipoPessoa);
        ps.setString(3,dataPagamento);
        ps.setString(4,dataVencimento);
        ps.setString(5,idMetodo);
        ps.setDouble(6,jurosAliquota);
        ps.setString(7,dataJuros);
        ps.setInt(8,numeroMeses);
        ps.setDouble(9,totalJuros);
        ps.setDouble(10,valorTotal);
        ps.setDouble(11,valorTotalCorrigido);
        ps.setString(12,dataTransferencia);
        ps.setDouble(13,valorCorrigido);
        ps.setDouble(14,valorPagoTribunal);
        ps.setInt(15,codParcela);
    }catch(SQLException sqlex){
        executa.log("Erro ao pagar as parcelas: \n"+sqlex.getMessage());
    }finally{
        Metodos.fecha(ps);
    }[/code]

Aparece o seguinte erro:
Erro ao carregar informações das parcelas: [IBM][CLI Driver] CLI0100E Wrong number of parameters. SQLSTATE=07001
Eu contei e recontei o numero de parametros e nao vi nenhum erro… por acaso o PreparedStatemente tem alguma limitacao no numero de parametros q podem ser passados a ele?

Desde já agradeço

Cara,
A tua tabela tem todos esses campos?
Se você executar o código, por exemplo:

try{
   ResultSet rs=stmt.executeQuery("SELECT * from PARCELA_PRECATORIO");
   System.out.println("Numero de campos: " +
   rs.getMetaData().getColumnCount());
catch (SQLException e){
    System.out.println(e);
}

retorna 15 campos?

[]'s