I am trying create an array of text to pass to a postgreSQL function
and I am getting the following error
"java.lang.AbstractMethodError:
org.apache.commons.dbcp.PoolingDataSource$PoolGuardConnectionWrapper.createArrayOf(Ljava/lang/String;[Ljava/lang/Object;)Ljava/sql/Array;"

I have tried googling for a possible solution without much success the
closed I got was the discussion in this thread
"http://archives.postgresql.org/pgsql-jdbc/2009-04/msg00013.php";

I am using JDBC driver (postgresql-8.4-701.jdbc4.jar) for postgreSQL
and commons-dbcp-1.2.2.jar for connection pooling.

My code like like this.


        public static int persistUserInput(
                Connection conn,String 
_user_input_id,Map<String,Vector<String>> userInputMap
        )throws SQLException
        {
                int _rows_affected=-1;
                String _input_name=null;
                String _input_values[]=new String[0];
                PreparedStatement ps=null;ResultSet rs=null;
                for (Map.Entry<String,Vector<String>> y : 
userInputMap.entrySet())
                {
                        _input_name=y.getKey();
                        Vector<String> v=y.getValue();
                        _input_values=v.toArray(_input_values);
                        try
                        {
                                
                                String _sql_query=""
                                        +" SELECT persist_user_input(?,?,?);"
                                ;
                                ps=conn.prepareStatement(_sql_query);
                                ps.setString(1,_user_input_id);
                                ps.setString(2,_input_name);
                                
ps.setArray(3,conn.createArrayOf("text",_input_values));
                                rs=ps.executeQuery();
                                if(rs.next())
                                {
                                        _rows_affected=rs.getInt(1);
                                }
                                rs.close();
                                ps.close();
                        }
                        catch(SQLException e)
                        {
                                throw e;
                        }
                        finally
                        {
                                /*
                                rs.close();
                                ps.close();
                                if(rs!=null&&!rs.isClosed())
                                {
                                        rs.close();
                                }
                                rs=null;
                                if(ps!=null&&!ps.isClosed())
                                {
                                        ps.close();
                                }
                                ps=null;
                                */
                        }
                }
                return _rows_affected;
        }

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to