PessoALL
Estou fazendo um estudo do Pattern DAO. Criei uma classe DAO(AeroportoDAO) onde vou ter todas as operações de negocio , no qual tenho um metodo para criar o Aeroporto como listado abaixo:
      /**
        * +criarAeroporto() - Criar Aeroporto.
        * @param Aeroporto aeroporto
        * @throws DAOException
        */
       public void criarAeroporto(Aeroporto aeroporto) throws DAOException {
               //validando informações
               if(aeroporto.getId() == null){
                       throw new DAOException("Error : O id deve ser informado.");
               }
               try{
                       // Preenchendo parametros...
                       List ListaParametros = new ArrayList();
                       ListaParametros.add(aeroporto.getId());
                       ListaParametros.add(aeroporto.getDescricao());
                       query = new DBQuery();
                       i = query.executeUpdate(SQL_CREATE_AEROPORTO, ListaParametros);
               }catch(Exception e){
                       throw new DAOException(e.getMessage());
               }
       }
As querys de consulta, inclusão, modificação e exclusão são passadas para uma classe DBQuery, onde eu tenho os metodos executeQuery e executeUpdate passando por parametros as query SQL, e uma lista de parametros(List) para a utilização de uma PreparedStatement. Segue abaixo um pedaço dessa classe:
[code]
/**
* +executeQuery()
* Executar consultas ao banco de dados.
* @param  String sql
*         List   params
* @return ResultSet
* @throws Exception
*/
public ResultSet executeQuery(String sql, List params) throws Exception{
try {
                   //
                   connection = DBConnection.getConnection();
                   pstmt      = this.setParametros(connection, sql, params);
                   rs         = pstmt.executeQuery();
                   return rs;
           } catch (Exception e) {
                   throw new Exception("Error : " + e.getMessage());
           }
   }[/code]
E o metodo que monta os parametros do PreparedStatement:
       private PreparedStatement setParametros(Connection conexao, String
sql , List parametros) throws Exception{
               PreparedStatement stmt = null;
               Object parametro = null;
               int i = 0;
               try{
                       stmt = connection.prepareStatement(sql);
                       Iterator lista = parametros.iterator();
                       // Preenchendo parametros
                       while(lista.hasNext()){
                               i++;
                               parametro = (Object) lista.next();
                               stmt.setObject(i, parametro);
                       }
               }catch (Exception e){
               }
               return stmt;
       }Ao executar uma classe de teste da a seguinte mensagem de texto:
“This function is not supported”.
Alguem sabe o que pode estar acontecendo ?