Похоже, что должно работать.
Пара случайных мыслей: правильно ли построены ваши люди? Может быть, они на самом деле не являются экземплярами мужчины или женщины.
Вы можете сделать несколько тестов, используя полиморфизм:
class Human{ ...
def speak() { println "Human" }
}
class Man extends Human{ ...
def speak() { println "Man" }
}
class Women extends Human{ ...
def speak() { println "Woman" }
}
def humans = humanService.all()
humans.each(){ human ->
human.speak()
}
Если в последней строке напечатано «человек-человек-человек», то люди построены неправильно, и все они - человеческие экземпляры, а не мужчина / женщина. Если это показывает ошибку, то они - что-то еще (как нули или что-то)
Удачи!