Я сделал этот контроллер, который должен использоваться для отправки электронных писем. Мне нужно получить доступ к i18n для отправки локализованных писем.
class MailController {
MessageSource messageSource
static transactional = false
public void sendEmail() {
String name = "some name..."
String subject = message(code:"somemessagekey", args:[name])
// do some fancy stuff here...
}
}
Тогда есть файл i18n (расположенный в папке i18n):
file name: messages.properties
content: somemessagekey = Blabla {0} - blablabla
После запуска этого запуска он запускает (в тесте интеграции):
groovy.lang.MissingPropertyException: No such property: messageSource for class: org.codehaus.groovy.grails.support.MockApplicationContext
Я не в курсе, как обрабатывать эту локализацию в контроллере (я также пробовал его в службе, но это еще сложнее).