Создан экземпляр класса, но, похоже, ссылка на ноль

Я пытаюсь создать экземпляр объекта и установить для него один атрибут, который исходит из параметра запроса, например так:

println "Question text from the request :" + params.question

def question = new SurveyQuestion()
question.question = params.question

println "this is our question" + question

Это мой вывод в консоли:

Текст вопроса из запроса: проверьте, это наш вопрос roosearch.SurveyQuestion: null

И это SurveyQuestion учебный класс:

class SurveyQuestion {

    String question

    static hasMany = [responses : SurveyQuestionResponse]
    static belongsTo = [survey: Survey]

    static constraints = {
    }
}

Выше, кажется, компилируется нормально, однако я получаю дополнительные исключения classcast, когда я делаю перенаправление в конце моего действия, я считаю, что это связано с созданием и настройкой этого SurveyQuestion, как будто я комментирую вышеизложенное, я не получаю это поведение сбоя.

Правильно ли я создаю экземпляр объекта SurveyQuestion? Почему он отображается как ноль, когда я печатаю его на консоль? Это нормальное поведение? По крайней мере, я бы ожидал, что он напечатает ссылку на объект, как Java?

Спасибо

1 ответ

По умолчанию toString() метод на экземпляре домена вернет строку, которая выглядит как class.name: id, Поскольку ваш недавно созданный экземпляр домена не имеет id набор показывает null,

Попробуйте переопределить toString() в вашем SurveyQuestion домен:

String toString() {
    return question
}
Другие вопросы по тегам