¿Alguien sabe si y cómo la solución para following question (que está escrita en la API de JPA) puede escribirse utilizando la API de criterios de hibernación?ElementCollection createAlias in hibernate API
Para ser más específicos Tengo una entidad de discusión que contiene una lista de participantes (que es una lista de nombres de usuario):
@ElementCollection
@Column(name = "user_name")
@CollectionTable(name = "DISCUSSION_USER", joinColumns = @JoinColumn(name = "DISCUSSION_ID"))
@OrderColumn(name = "ORDER_INDEX")
private List<String> participants = new ArrayList<String>();
ahora tengo que recuperar todas las discusiones donde un determinado nombre de usuario es un participante.
Si yo hubiera creado una entidad participante para esto sería sencillo:
Criteria crit = getSession().createCriteria(Discussion.class);
crit.createAlias("participants", "p");
crit.add(Restrictions.eq("p.userName", portalUsername));
Pero no puede crear un alias con una entidad no ...
nunca es demasiado tarde para una buena respuesta, voy a estar seguro de probar esto de una vez –
este momento no funcionó ... maldición .... Pero estoy usando una versión muy antigua, puede ser que esto se haya solucionado en las versiones más nuevas .. – Thihara
Parece que por el uso de estas constantes en el código fuente de Hibernate, estas son para Consultas HQL solamente. –