O polimorfismo explícito (anotação) do Hibernate 4 não está funcionando?
Eu estou enfrentando problema com o polimorfismo explícito do hibernate. Eu usei a anotação de polimorfismo e defini-a como explícita, mas com get () e coleções em classes mapeadas eu sempre obtenho todas as subclasses. Eu vejo todas as subclasses com left join na saída "show_sql" do hibernate. Qual é o problema? Eu entendo a documentação errada? Ou é um bug no hibernate 4? Eu não vi nenhum exemplo com anotação de hibernate 4 e polimorfismo.
sessionFactory.getCurrentSession().get(Node.class, 111); // return subclasses!
@Entity
@Table(name="Nodes")
@Inheritance(strategy = InheritanceType.JOINED)
@Polymorphism(type= PolymorphismType.EXPLICIT)
public class Node implements Serializable {
...
}
@Entity
@Table(name="Persons")
public class Person extends Node {
}
@Entity
@Table(name="Networks")
public class Network extends Node {
}
...and other subclasses...