Consulta polimorfica através de interfaces - HIBERNATE

3 respostas
renanreismartins

Prezados estou tentando realizar uma consulta polimorfica atraves de uma interface que é implementada por minhas entidades:

Vou postar um codigo ficticio para exemplificar

@Entity
public class Carro implements Veiculo{...}
@Entity
public class Moto implements Veiculo {...}
public interface Veiculo {...}

então faço minha hql:

FROM Veiculo

recebo a exceção:

org.hibernate.hql.ast.QuerySyntaxException: Veiculo is not mapped [FROM Veiculo]

onde estou errando?

abrassss

3 Respostas

Hebert_Coelho

Vc tem certeza de que isso funciona?
@Entity
public interface Veiculo {…}

Até onde eu sei, para ser uma entidade precisa ser uma Classe e precisa ter a anotação @Id em algum campo.

renanreismartins

pessoal já achei a resposta…

não temos como mapear as interfaces, por isso o hibernate não consegue performar a query. Portanto devemos usar o nome qualificado da interface ex:

FROM br.com.empresa.model.Veiculo

abrassss

renanreismartins

oi jakefrog, obrigado pela atencao

vc n pode anotar uma interface com @Entity e realmente tem q ter o @Id como vc citou.

o @Entity da interface foi erro de digitacao. já corrigi

abrasss

Criado 17 de janeiro de 2012
Ultima resposta 17 de jan. de 2012
Respostas 3
Participantes 2