У меня есть объект команды в другом пакете от моего контроллера. Я импортирую это в контроллер. Я создаю и возвращаю экземпляр этой команды из действия create:
def create = {
def reportCreateCommand = new ReportCreateCommand()
reportCreateCommand.name = params.name
reportCreateCommand.jrxmlFile = params.jrxmlFile
return [cmd: reportCreateCommand]
}
Но закрытие действия сохранения не создает объект этой команды из свойств:
def save = { ReportCreateCommand cmd ->
if (cmd.validate()){
def reportInstance = cmd.createReport()
reportInstance.save()
redirect(action:"show", id:reportInstance.id)
}
else {
render(view:"create", model:[cmd:cmd])
}
}
Очевидно, что cmd является нулем в закрытии сохранения. Командный класс имеет два свойства name и jrxmlFile. Из того, что я знаю, Grails должен создать экземпляр объекта команды в методе save из params. Должен ли я сделать что-нибудь еще?