Does anybody know how I could get the fieldError
to print out in the example below.
for each item with an error, I would like to print custom error messages that I have defined in the messages.properties file
at the moment all this does is print the default error codes
item.errors?.allErrors?.each{
println it.toString()
}
I have seen other examples where you can lookup an error code for a field e.g.
it.getFieldError('title').code
but I would like to convert the default message into my new error message and print that.
You need access to the messageSource bean, e.g. with
def messageSource
in your controller or service. Then you can access the messages with
def locale = Locale.getDefault()
for (fieldErrors in bean.errors) {
for (error in fieldErrors.allErrors) {
String message = messageSource.getMessage(error, locale)
}
}