HQL: consulta de hibernación con ManyToMany

Tengo una pregunta con HQL query e hibernate.

Tengo una clase de usuario y una clase de rol. Un usuario puede tener muchos roles. Así que tengo una relación ManyToMany como esta:

En clase de usuario:

@ManyToMany(fetch = FetchType.LAZY)
@oinTable(name = "PORTAIL_USERROLE", joinColumns = { @JoinColumn(name = "USERID", nullable = false, updatable = false) }, inverseJoinColumns = { @JoinColumn(name = "ROLE", nullable = false, updatable = false) })
public Set<Portailrole> getPortailroles() {
    return this.portailroles;
}

En clase de rol:

@ManyToMany(fetch = FetchType.LAZY)
@JoinTable(name = "PORTAIL_USERROLE", joinColumns = { @JoinColumn(name = "ROLE", nullable = false, updatable = false) }, inverseJoinColumns = { @JoinColumn(name = "USERID", nullable = false, updatable = false) })
public Set<Portailuser> getPortailusers() {
    return this.portailusers;
}

Este mapeo ha creado una tercera tabla (PORTAIL_USERROLE) donde se almacenan las relaciones. Todo funciona bien así. Cuando tengo un usuario, recupero roles.

Pero mi pregunta es: en una consulta HQL, ¿cómo puedo obtener todos los usuarios que tienen un rol específico? Cualquier clase representa la tabla PORTAIL_USERROLE, así que no sé cómo hacer mi consulta HQL.

Respuestas a la pregunta(2)

Su respuesta a la pregunta