Dúvida HQL e Casting

Seguinte… Excurando a consulta HQL direto no editor do Hibernate tenho o retorno esperado…

from EndEndereco e where e.cep = ‘72630310’ //Meu cep… EndEndereco = Mapeamento referente a tabela end_endereco.

O retorno da consulta é: Cep = 72630310
EndCidade (Um objeto)
EndBairro (Um objeto)
Endereco (Quadra 403 Conjunto 10)

No java tenho o seguinte código:

private Session session;
private EndEndereco endereco = new EndEndereco()

public void recuperarEndereco(String cep) {
      session = HibernateUtil.getSessionFactory().openSession();
session.beginTransaction();
endereco = (EndEndereco) session.createQuery("FROM EndEndereco e Where e.cep = " + cep);
/*Mesma consulta efetuada no editor*/
session.getTransaction().commit();
session.close();

/*Testando retorno*/

System.out.println("Endereco: " + endereco.getEndereco());
System.out.println("Cidade: " + endereco.getEndCidade().getCidade());
System.out.println("Bairro: " + endereco.getEndBairro().getBairro());

}

public static void main(String[] args){

ClinicaController teste = new ClinicaController();
teste.recuperarEndereco("72630310");

}

Não tenho erro de compilação, porém ao executar o código gera uma exceção: org.hibernate.impl.QueryImpl cannot be cast to model.entity.EndEndereco

Se eu remover o casting, gera erro: incompatible types… required: model.entity.EndEndereco found: org.hibernate.query

Não está faltando um getResult ou getSingleResult ou alguma coisa do tipo não?

Jakefrog… Em todos os exemplos (Tutoriais) que vi, na pesquisa utilizam apenas o cast quando o retorno é um objeto. Não conheço muito sobre Hibernate, então não sei como utilizar o método getResult ou getSingleResult…

Estou procurando explicações agora especificamente sobre esses métodos para verificar se resolvem meu problema…

Sabe me informar, como/onde utiliza-los?

procurei na internet hibernate tutorial e o primeiro resultado
http://docs.jboss.org/hibernate/orm/3.3/reference/en/html/tutorial.html
ele usa .list() ou .uniqueResult

Apenas o nome que muda mas eu não achei tutorial mostrando do modo como você falou.

Os métodos q eu citei são do JPA puro, o hibernate mudou o nome dos métodos.

[quote=jakefrog]procurei na internet hibernate tutorial e o primeiro resultado
http://docs.jboss.org/hibernate/orm/3.3/reference/en/html/tutorial.html
ele usa .list() ou .uniqueResult

Apenas o nome que muda mas eu não achei tutorial mostrando do modo como você falou.

Os métodos q eu citei são do JPA puro, o hibernate mudou o nome dos métodos.[/quote]

JakeFrog… Realmente isso me ajudou bastante… Eu já tinha visto esses exemplos, mas não me atentei ao .uniqueResult(). Vi o List() e como meu retorno não era uma lista dava pra imaginar que não ia funcionar…

Vi em algum lugar (acho que na devmedia) usando apenas o cast [Não sei no dele, mas no meu caso não funcinou]… Com o .uniqueResult() tudo funcionou conforme o esperado…

Muito obrigado pela ajuda!!!