2

Can someone help me to understand why internationalization using ResourceBundle does not work in Google App Engine Servlet the same way it works in a command line Java application?

The following snippet:

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());

Logs only en_US in GAE.

resource_en_US:en_US

resource_de_DE:en_US

resource_ja_JP:en_US

But logs the appropriate Locales in command line Java program.

resource_en_US:en_US

resource_de_DE:de_DE

resource_ja_JP:ja_JP

jmj
  • 237,923
  • 42
  • 401
  • 438
tanji
  • 51
  • 1
  • 3

1 Answers1

0

Make sure your properties files are being copied into WEB-INF/classes. You can check this out using a command shell.

Nacho Coloma
  • 7,070
  • 2
  • 40
  • 43
  • Hi @nacho-coloma, I use Eclipse as development environment and these files are being copied to /war/WEB-INF/classes. – tanji May 28 '12 at 11:17