【问题标题】:Thymeleaf can not find internationalized messagesThymeleaf 找不到国际化消息
【发布时间】:2018-11-15 08:00:28
【问题描述】:

我尝试在 Google 上搜索,但找不到任何解决问题的方法。

代码链接是 https://github.com/optimus29/ThymeleafDemo

我在运行 JUnit 测试 com.jk.th.mail.util.MailTemplateTest.java 时得到以下输出:

----------------------------------------------
             * Mail contents *
----------------------------------------------
Recipients: def@mail.com
Subject: Complete registraion process
Message: 
<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8"/>
    <title>??subject.registration.complete_en_US??</title>
</head>

<body>
    <p>??grettings.user_en_US??</p>

    <p>??registration.text.line1_en_US??</p>

    <p>
        <a href="https://www.example.com/completeRegistration">??registration.link.text_en_US??</a>
    </p>

    <p>??registration.text.line2_en_US??</p>

    <div>
        <p>
            <span>??thanks_en_US??</span><br/>
            <span>??pustakalaya.team_en_US??</span><br/>
            <span>??contact.mail_en_US??</span><br/>
            <span>??contact.number_en_US??</span>
        </p>
    </div>

</body>
</html>
----------------------------------------------

【问题讨论】:

  • 你有什么问题?

标签: spring spring-boot internationalization thymeleaf


【解决方案1】:

我不太确定您编写配置的方式有什么不对,但是... 由于无论如何您都在使用默认路径,您可以删除调用(在SpringMailConfig.springTemplateEngine()中):

templateEngine.setMessageResolver(messageResolver());

那么您也可以删除 bean messageResolveremailMessageSource

完成此操作后,唯一未解决的消息将是“grettings”(因为拼写错误)。

【讨论】:

  • emailMessageSource 导致了问题。当我删除它时,它起作用了。有什么想法,为什么?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-05-30
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-05-12
相关资源
最近更新 更多