Buenas povo, vou descrever um erro que eu nunca vi antes…
Tenho duas classes (coloquei só os atributos importantes):
A classe Propriedade tem esse trecho de código:
@ManyToOne(cascade = {CascadeType.MERGE, CascadeType.PERSIST})
@JoinColumn(name = "id_valor", nullable = true)
public Valor getValor() {
return valor;
}
A classe Valor tem esse trecho:
@OneToMany(mappedBy = "valor", cascade = {CascadeType.MERGE, CascadeType.PERSIST})
public List<Propriedade> getPropriedades() {
return propriedades;
}
Quanto faço uma query o sql gerado:
select this_.id as id5_1_, this_.createDate as createDate5_1_, this_.updateDate as updateDate5_1_, this_.version as version5_1_, this_.conteudo as conteudo5_1_, this_.rotulo as rotulo5_1_, this_.id_valor as id7_5_1_, valor2_.id as id2_0_, valor2_.createDate as createDate2_0_, valor2_.updateDate as updateDate2_0_, valor2_.version as version2_0_, valor2_.rotulo as rotulo2_0_, valor2_.valor as valor2_0_ from propriedade this_ left outer join valor valor2_ on this_.id_valor=valor2_.id limit ?
O problema é:
Essa query retorna um List de Object :shock: sendo que meu PersistenceClass é Propriedade, e o mais estranho é que cada Object tem um array :? . Onde na primeira posição tem uma entidade Valor e na segunda tem uma entidade Propriedade.
Alguém tem alguma idéia do porque o hibernate está assumindo esse comportamento?
Valeu

