Erro de Conversão quando executo HQL

Alguém pode ajudar a encontrar o que pode estar errado com meu HQL.

1 - Quando executa o HQL1 ele executa normalmente não da nenhum erro mas a cidade vem null
2 - Quando executo o HQL2 ele traz todos os dados completos bairro e cidade mas quando executo o endereco = eFind.get(0); ele da o seguinte erro: java.lang.ClassCastException: [Ljava.lang.Object;

Já fiz alterando o HQL para INNER JOIN mas deu o mesmo erro.

      SQL1
      FROM pojo.Endereco as e
      WHERE e.cep = :cep

      SQL2
      FROM pojo.Endereco as e,
      pojo.Cidade c,
      pojo.Bairro b
      WHERE e.cep = :cep
      AND s.cidade = c
      and s.bairro = b
            Endereco endereco = new Endereco();
            Query q = session.getNamedQuery("buscaCep");
            q.setParameter("cep", 11111111);
            ArrayList<Endereco> eFind = (ArrayList<Endereco>) q.list();
            endereco = eFind.get(0); //<-- ERRO NESTA LINHA

Consegui resolver :smiley: .

Não sei se é o certo mas funcionou da forma que queria

      FROM Endereco as se,
               Cidade sc,
               Bairro sb,
               Estado su
      WHERE se.cep = :cep
      and se.bairro = sb
      and sc = sb.cidade
      and su = sc.estado

      Query q = session.getNamedQuery("buscaCep");
      q.setParameter("cep", cep);
      List t = (List) q.list();
      Object[] o = (Object[]) t.get(0);
      endereco = (Endereco) o[0];