有人可以帮助我理解为什么使用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程序中记录相应的Locales。
resource_en_US:en_US
resource_de_DE:de_DE
resource_ja_JP:ja_JP
答案 0 :(得分:0)
确保将属性文件复制到WEB-INF / classes中。您可以使用命令shell进行检查。