控制器错误报告 - 错误为空

时间:2015-04-30 19:32:48

标签: grails error-handling controller

我想问一下关于grails'控制器中错误报告的正确方法的一般问题。这种做法的常见方式似乎是使用弹簧验证错误界面。它简单,优雅,在GSP渲染中得到了很好的支持:

def myAction() {
     ...
     errors.reject(...) // NPE
     ... 
     if (hasErrors()) {
         // handle errors
     }
}

但是,我也注意到,当使用域对象和参数绑定时,errors具有null值。这是grails'的错误还是我错过了什么。在这种情况下,添加任何假String(以避免任何绑定错误)参数的操作有很大帮助:

def myAction(String dummyArg) {
     ...
     errors.reject(...) // successful, no NPE
     ... 
     if (hasErrors()) {
         // handle errors
     }
}

当然,这样的解决方案远非优雅。如何强制errors始终可访问?如果有时候errorsnull,那么这是正确的错误报告方法吗?

0 个答案:

没有答案