Ограничение, допускающее значение NULL, для командного объекта Grails

Недавно я обновил приложение версии 1.3.6 до Grails2. Мои тестовые примеры начали давать сбой

Вот сценарий, у меня есть объект команды и ограничение. Когда запрос попадает в действие, без параметра name (localhost:8080/app-name/Book/test?i=0) я получаю ошибку проверки. В документе Grails говорится, что поля Command Object по умолчанию могут принимать значение NULL. Судя по этому тесту, это не так. Мой вопрос заключается в том, как сделать их обнуляемыми глобально для всех командных объектов? Код ниже,

class BookController {

    def test = {TestCommand cmd ->
        cmd.validate()
        if (cmd.hasErrors()) {
            println "has Errors"
            render 'Error'
        } else {
            println "Success"
            render 'Hello World'
        }
    }
}

Объект команды:

class TestCommand {
       int i;
       String name

       static constraints = {
         name(password: true)
       }
} 

person Karthick AK    schedule 04.01.2012    source источник


Ответы (1)


Это оказалось ошибкой Grails. В Grails 2.0 изменилось поведение относительно значения по умолчанию, допускающего значение NULL, для командных объектов. Вот JIRA.

person Karthick AK    schedule 05.01.2012