Почему LemonUtil.getMessage() не заменяет переменные?

В процессе регистрации в Spring Lemon я пытаюсь отправить подтверждение по электронной почте. Я поместил messages_en.properties и messages_fr.properties в свой resourcesпапка. Вот соответствующий контент messages_en.properties

com.naturalprogrammer.spring.verifyEmail: Hi,<br/><br/>Your email id at XYZ is unverified. Please click the link below to get verified:<br/><br/>{0}<br/><br/>

Но когда я просматриваю журналы, он отправляет почту, не заменяя {0} проверяющей ссылкой.

Я посмотрел на код и понял, что эта часть LemonService является isse:

            // send the mail
        mailSender.send(user.getEmail(),
            LemonUtil.getMessage("com.naturalprogrammer.spring.verifySubject"),
            LemonUtil.getMessage(
                "com.naturalprogrammer.spring.verifyEmail", verifyLink));

Но фактическая работа выполняется с помощью этого кода в LemonUtil.java:

                /**
 * Gets a message from messages.properties
 * 
 * @param messageKey    the key of the message
 * @param args          any arguments
 */
public static String getMessage(String messageKey, Object... args) {

    // http://stackru.com/questions/10792551/how-to-obtain-a-current-user-locale-from-spring-without-passing-it-as-a-paramete
    return messageSource.getMessage(messageKey, args,
            LocaleContextHolder.getLocale());
}

Мне удалось как-то решить эту проблему, удалив {0} в.properties и добавив ссылку на себя так:

            // send the mail
        mailSender.send(user.getEmail(),
            LemonUtil.getMessage("com.naturalprogrammer.spring.verifySubject"),
            LemonUtil.getMessage(
                "com.naturalprogrammer.spring.verifyEmail", verifyLink) + verifyLink);

Я думаю, что метод getMessage org.springframework.context.MessageSource не работает должным образом. Мой вопрос: что может помешать работе messageSource?

0 ответов

Другие вопросы по тегам