2010-01-26 7 views
1

J'ai une application avec deux classes de domaine comme suit:Grails problème Hibernate H2

DomainA : PK, name

DomainB : PK, FK (points to DomainA.PK), name.

Et lorsque je tente de lister les éléments qui appartiennent à DomaineA en utilisant le DomainB.name comme facteur d'ordre, comme suit:

def listings DomainA.createCriteria().list(params) { 
    PK{ 
    order('name','asc') 
    } 
} 

Cela fonctionne avec MySQL, mais pas avec H2 me donner l'erreur suivante:

Column DomainB.name must be in the GROUP BY list; SQL statement:

Ainsi Itried e La solution suivante sans la chance:

def listings DomainA.createCriteria().list(params) { 
    projections{ 
    groupProperty('name') 
    } 
    PK{ 
    order('name','asc') 
    } 
} 

Toutes les idées ou des solutions à cela? Merci d'avance.

+0

J'ai été mordu par le même problème, il semble y avoir un bug dans H2: http://jira.grails.org/browse/GRAILS-8162 – elias

Répondre

0

Vous pouvez toujours revenir à une requête HQL au lieu d'utiliser des critères.