Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Unable to determine the correct call signature - multiple procedures/functions/signatures error while using simpleJdbcCall

Here is my DAO code

 this.calcRTRDetails = new SimpleJdbcCall(dataSource).withCatalogName("score_rtr").
                     withProcedureName("calc_rtr_dtls").declareParameters(
                        new SqlParameter("p_repy_track", Types.ARRAY)    
                      ).returningResultSet("p_track_dtls",new RowMapper<String>() {

                        @Override
                        public String mapRow(ResultSet rs, int arg1)
                                throws SQLException {
                            // TODO Auto-generated method stub
                            return rs.getString(1);
                        }
                    } );

I get the following error

org.springframework.dao.InvalidDataAccessApiUsageException: Unable to determine the correct call signature - multiple procedures/functions/signatures for CALC_RTR_DTLS found [SCORE_RTR.SCORE.CALC_RTR_DTLS, SCORE_RTR.SCORE.CALC_RTR_DTLS]

What can be the reason ??

like image 331
Abhishek Singh Avatar asked Mar 22 '23 20:03

Abhishek Singh


1 Answers

I found that I had a very similar issue where I was trying to call an overloaded Postgres function. The solution in Spring 3.2.3 was to call withoutProcedureColumnMetaDataAccess().

But be sure to explicitly declare your parameters. Alternative is to to give your overloaded functions different names.

like image 195
user3438347 Avatar answered Mar 24 '23 11:03

user3438347