如何在Thymeleaf和Spring Boot中显示消息?

2023-12-27

我创建了一个使用 Thymeleaf 作为模板引擎的 Spring Boot Web 应用程序。我配置了MessageSource在子文件夹中查找邮件:

@Bean
public MessageSource messageSource() {
    final ReloadableResourceBundleMessageSource messageSource = new ReloadableResourceBundleMessageSource();

    messageSource.setBasename("i18n/messages");
    messageSource.setFallbackToSystemLocale(false);
    messageSource.setCacheSeconds(0);

    return messageSource;
}

在此文件夹中我创建了文件messages_de.properties与内容ticket.type.BUG=Fehler。在我的模板中,我尝试显示如下文本:

<p th:text="#{ticket.type.BUG}">BUG</p>

但是当页面呈现时,我得到以下信息:

<p>??ticket.type.BUG_de_DE??</p>

我缺少什么?我需要配置任何额外的 bean 吗?

P.S.:

在“服务器端”我可以使用以下命令获取消息MessageSource#getMessage("ticket.type.BUG", null, Locale.GERMANY).


因为我使用的是Spring Boot,MessageSource配置有一个MessageSourceAutoConfiguration http://docs.spring.io/spring-boot/docs/current/api/org/springframework/boot/autoconfigure/MessageSourceAutoConfiguration.html。这些设置可以在application.properties文件。就我而言,我必须将以下内容添加到该文件中:

spring.messages.basename=i18n/messages
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何在Thymeleaf和Spring Boot中显示消息? 的相关文章

随机推荐

  • 调试 KML 文件

  • 浮点和定点表示的优缺点[关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 在过去的三天里 我一直在尝试理解浮点表示和定点表示之间的确切区别 我在阅读这些材料时感到困惑 无法确定什么是对的 什么是错的 问题之一
  • 将查询结果传递到存储过程

    我有一个接受三个参数的存储过程 是否可以使用查询作为输入来调用此存储过程 举个例子 我有tableA SELECT FROM TABLEA A B C 1 2 3 4 5 6 现在 有什么方法可以调用 EXEC sp name SELECT
  • 2D瓦片地图生成

    对于 2D 图块引擎 我正在研究地图生成算法 我尝试了高度图生成 山地一代 柏林噪声 菱形方形 适合具有高度组件的图块地图 但我有草 海 沙漠等精灵 它们的放置方式应如下所示 一切都从海洋开始 岛屿被放置在地图的中间 这是我尝试的算法大多失
  • 如何从随机网页中抓取文本和图像?

    我需要一种方法来直观地表示互联网上的随机网页 比如说this https www reddit com r food comments 85rm0d homemade chocolate banana bread with nuts 网页
  • 如何存储历史数据[关闭]

    Closed 这个问题需要细节或清晰度 help closed questions 目前不接受答案 我和一些同事就存储历史数据的最佳方式进行了争论 目前 对于某些系统 我使用单独的表来存储历史数据 并为当前活动记录保留原始表 所以 假设我有
  • 如何在android中的后者边界内打开另一个应用程序内的应用程序?

    如何在android中的后者边界内打开另一个应用程序内的应用程序 即 类似于 HTML 中的 iframe 的作用 你基本上不能 这违反了Android的规则 您最多能做的就是打开一个网页作为应用程序的一部分 这是使用 webView 完成
  • LevelDB 与 std::map

    在我们的应用程序中我们使用std map存储 键 值 数据并使用序列化将该数据存储在磁盘上 通过这种方法 我们发现磁盘 I O 是性能瓶颈 并且使用 key 查找值并不是很快 我遇到过 LevelDB 并考虑使用它 但我有一些问题 Leve
  • 为什么 `;;` 在 utop 中给我一个语法错误?

    我正在开发一个简短的项目 将小程序从 python 转换为 java 反之亦然 我创建了以下代码 并在 utop 中进行了测试 let c let x for int i 0 i lt 10 i and y for i in range 0
  • 在 bash 脚本/命令中,如何发出 PC 蜂鸣声或播放声音文件?

    我有一些长时间运行的脚本 需要输入 交互才能继续 但是当我切换到另一个窗口时 我希望收到 通过声音 通知任务已完成并且正在等待输入 我希望能够播放音频剪辑 mp3 ogg 等 但不关心唯一的解决方案是否是让 PC 扬声器发出蜂鸣声 有任何想
  • 如何从 UIView 类的 xib 文件导航到 ViewController

    我的 xib 文件中有一个包含按钮的视图 当我按下按钮时我想移动到 ViewController IBAction 我使用了下面的代码 let storyBoard UIStoryboard UIStoryboard name Main b
  • 从本地通知启动关闭的 iOS 应用程序

    当我的 iOS 应用程序在后台运行时 它响应良好 void application UIApplication application didReceiveLocalNotification UILocalNotification noti
  • Python 中的元组和 CSV 读取器

    尝试一些相对简单的事情 首先 我有一个以元组为键的字典 如下所示 0 1 1 0 索引 1 我正在读取一个 CSV 文件 该文件具有一组相应的字段 其中包含这些零和一的各种组合 例如 CSV 中的行可能会读取 0 1 1 0 而无需任何引号
  • 按值对 dict 进行排序,然后如果按键相等

    我创建了一个字典 键 列表中的单词值 它们的数量 想要按计数 值 对它们进行排序 那么如果计数相等 则按 alpha 键 对它们进行排序 a to be or not to be ae ae w for i in a w i a count
  • Java 中的嵌套枚举

    我想嵌套一些枚举 我代表的对象是标志 具有类型和值 有离散数量的类型 每种类型都有一组不同的可能值 因此 如果类型 A 可以有值 1 2 或 3 而类型 B 可以有值 4 5 6 我希望能够执行以下操作 Flag f Flag A 1 f
  • 我应该如何将 try-with-resources 与 JDBC 结合使用?

    我有一种使用 JDBC 从数据库获取用户的方法 public List
  • 如何在idea中调试play2?

    我在互联网上找到了一些文章和谷歌小组上的一些讨论 但它们不再起作用了 最新的play2 RC3如何做到这一点 您可以从控制台以调试模式启动播放服务器 docs http www playframework org documentation
  • 如何在 MATLAB 图形中设置子图大小?

    我经常需要将 10 个图像绘制在一起 但使用此代码会产生小图像 img rand 400 600 for i 1 10 subplot 2 5 i imshow img title Image int2str i end 正如您所看到的 图
  • 将 Selenium 与 Brave Browser 一起使用,传递用 python 编写的服务对象

    TLDR 我想使用勇敢的浏览器和用 python 编写的 selenium 但找不到任何当前有效的解决方案 这段代码有效 from selenium import webdriver option webdriver ChromeOptio
  • 如何在Thymeleaf和Spring Boot中显示消息?

    我创建了一个使用 Thymeleaf 作为模板引擎的 Spring Boot Web 应用程序 我配置了MessageSource在子文件夹中查找邮件 Bean public MessageSource messageSource fina