Problema com duplicatas usando a função withCriteria do Grails com um relacionamento muitos para muitos

Tenho duas tabelas, pergunta e resposta, com um relacionamento muitos-para-muitos (ou seja, as perguntas podem ter várias respostas e as respostas podem ser reutilizadas por várias perguntas). Para normalização, tenho uma tabela de referência cruzada entre eles, denominada Question_Answer, que possui um relacionamento muitos-para-um com as duas tabelas. Estas são suas definições de classe:

class Question {
    int id
    int text

    static hasMany = [questionAnswers : QuestionAnswer]
}

class Answer {
    int id
    int text

    static hasMany = [questionAnswers : QuestionAnswer]
}

class QuestionAnswer {
    int id
    Question question
    Answer answer
}

Estou tentando obter uma lista de respostas com base em determinados critérios. Aqui está minha consulta de critérios (usando Grails 'withCriteria função):

def listing = Answer.withCriteria {
    cache false
    order "id", "asc"

    eq("id", myAnswerID)

    questionAnswers {
        question {
            isNotNull("text")
        }
    }
}

Aqui está um exemplo do problema que estou tendo:

Tenho uma resposta que corresponde a 3 perguntas diferentes. O que eu quero na "listagem" é 1Answer objeto, com seuquestionAnswers lista preenchida com os 3 correspondentesQuestionAnswer objetos. Em vez disso, estou recebendo 3 @ idênticAnswer objetos, todos com seusquestionAnswers listas preenchidas.

Existe uma maneira simples de conseguir o que eu quero? Espero estar perdendo algo pequeno.

ualquer ajuda / sugestão é muito apreciad

Obrigado, B.J.

questionAnswers(1)

yourAnswerToTheQuestion