Grails Id é null após chamar salvar

Eu já pesquisei sobre isso, mas ainda não consigo descobrir o que estou fazendo de errado. Depois de chamarsave() o objeto de domínioid énull.

Eu li que vai acontecer se houver um problema ao salvar o objeto, e quesave(flush:true) deve lançar um erro se for esse o caso, mas não é. Veja meu código e a saída:

def pic = new Picture(title:'XX', path:"XXX")
album.addToPictures(pic).save()
if(pic.validate())
   println "no errors. New id: " + pic.id
else
   println "with errors"

Saída:

no errors. New id: null

E quando usando flush: true

def pic = new Picture(title:'XX', path:"XXX")
album.addToPictures(pic).save(flush:true)
if(pic.validate())
   println "no errors. New id: " + pic.id
else
   println "with errors"

Saída:

no errors. New id: 17

Como você pode ver, não há erros ao criar o objeto, e eu deveria ser capaz de obter oid do objeto depois de apenas chamarsave(). Alguma ideia?

obrigado

questionAnswers(2)

yourAnswerToTheQuestion