2012-01-04 6 views
0

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

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

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) 
     } 
} 

ответ

2

Оказалось, что это ошибка Grails. Grails 2.0 изменил поведение по умолчанию для значения NULL для Command Objects. Вот JIRA