Grails 1.1 Web层 - 数据绑定 - 数据绑定与类型转换错误

有时,当执行数据绑定时,它可能不会将一种指定的String转换为指定的目标类型.

你会得到类型转换错误. Grails 会保留类型转换错误在Grails domain 类的 errors 属性中 .

例如这里:class Book { … URL publisherURL }这里,我们有一个Bookdomain 类 ,它使用Java的java.net.URL来表示 URLs.现在,我们有一个像这样的请求参数:/book/save?publisherURL=a-bad-url在这种情况下,它不可能将 字符串a-bad-url 绑定到 publisherURL 属性上,一个类型匹配错误会发生.

你可以像这样来检查它们:def b = new Book(params) if(b.hasErrors()) { println "The value ${b.errors.getFieldError('publisherURL').rejectedValue} is not a valid URL!" }虽然,我们没有覆盖错误代码 (更多信息查看 Validation), 你需要的类型转换错误的错误消息在grails-app/i18n/messages.properties 内.

你可以使用像下面这样的普通错误消息来处理 :
typeMismatch.java.net.URL=The field {0} is not a valid URL