Salvem,
Eu preciso executar uma query como esta com o método Session.find() que tenha um join para outro objeto mas sem relação entre as entidades mapeadas no Hibernate.select cid from Cidade as cid join Estado as est on (cid.codEstado = est.codEstado) where est.nomeEstado like 'M%'
O Hibernate não consegue resolver o join por que eu não tenho uma referencia many-to-one entre Cidade e Estado. O problema é que eu não quero que Cidade tenha essa referencia a Estado, pois eu preciso deste join em poucos lugares e eu pagaria o preço de a referencia a Estado ser carregada junto com Cidade.
Eu poderia fazer isso com SQL nativo, mas gostaria que fosse em HQL , senão eu teria que popular os campos de Cidade na mão e talvéz teria problemas se mudasse de banco (Interbase -> Oracle)
A pergunta é : Como fazer um join entre objetos cuja relação não esteja mapeada em um hbm.xml ?