Graal - Comment obtenir la liste des différents Objets Utilisateur

Est-il un moyen que je peux obtenir la liste des différents User objets(basé sur le nom d'utilisateur). Et toujours obtenir le résultat que d'une Liste de User Objets plutôt que la, Liste de nom d'utilisateur.

Mon code est

def criteria = User.createCriteria()
def users = criteria.list() {
    projections {
        distinct("username")
    }
    setResultTransformer(CriteriaSpecification.ROOT_ENTITY)
}
return users

Suis actuellement obtenir la Liste des noms d'utilisateur, pas l'Utilisateur.

De l'utilisateur.findAll ne fonctionne pas?
1.) J'ai besoin de pour obtenir d'Utilisateur distinct des objets(basé sur le nom d'utilisateur). 2.) J'ai utiliser des critères, ma liste est basée sur une recherche complexe. Donc findAll() l'habitude de s'intégrer.
criteria.listDistinct()?
Comme par Graal Le document "les listDistinct() la méthode ne fonctionne pas bien avec les options de la pagination maxResult et firstResult." L'utilisateur ici, devrait être distinct fondé sur le nom d'utilisateur qui n'est pas basée sur la méthode equals ou id.
Cette question n'a pas de sens à partir d'une base de données de point de vue. Une fois que vous faites un appel précis vous serait tout simplement être arbitrairement attrape le premier résultat qui correspond au nom d'utilisateur et de conservation de retour. Vous auriez probablement besoin d'utiliser les requêtes HQL pour ce faire, mais je ne suis toujours pas certain pourquoi vous désirez. Il me semble qu'il y est un défaut de conception dans la table User pour commencer si les noms d'utilisateur peuvent être dupliqués.

OriginalL'auteur ashipj | 2013-07-12