java - Google App Engine Servlet 中的 ResourceBundle 无法按预期工作

标签 java google-app-engine internationalization resourcebundle

有人可以帮助我理解为什么使用 ResourceBundle 的国际化在 Google App Engine Servlet 中的工作方式与在命令行 Java 应用程序中的工作方式不同吗?

以下片段:

ResourceBundle resource_en_US, resource_de_DE, resource_ja_JP;

resource_en_US = ResourceBundle.getBundle(bundleBasename, Locale.US); resource_de_DE = ResourceBundle.getBundle(bundleBasename, new Locale("de_DE")); resource_ja_JP = ResourceBundle.getBundle(bundleBasename, new Locale("ja_JP"));

logger.info("resource_en_US:"+ resource_en_US.getLocale()); logger.info("resource_de_DE:"+ resource_de_DE.getLocale()); logger.info("resource_ja_JP:"+ resource_ja_JP.getLocale());

在 GAE 中仅记录 en_US

resource_en_US:en_US

resource_de_DE:en_US

resource_ja_JP:en_US

但在命令行 Java 程序中记录适当的语言环境。

resource_en_US:en_US

resource_de_DE:de_DE

resource_ja_JP:ja_JP

最佳答案

确保您的属性文件被复制到 WEB-INF/classes 中。您可以使用命令 shell 来检查这一点。

关于java - Google App Engine Servlet 中的 ResourceBundle 无法按预期工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10736571/

相关文章:

java - 如何在java中重复代码

java - 使用 Firebase 根据 1 个属性检索整个对象?

java - 在不同的类中调用改造

google-app-engine - 谷歌应用引擎中的临时存储

c# - 使字符串 URL 友好(例如 : convert Montréal to Montreal)

java - 在 Hibernate 中使用 Cascade 时阻止更新或插入实体

python - 如何在ndb中按sum查询

google-app-engine - 在 django-nonrel 中创建 super 用户

tomcat - Grails 1.3.7 clean 项目无法提供 utf8 文件

javascript - 如何解析从 Intl.DateTimeFormat 生成的日期字符串