I also created the simple HelloWorld application to verify it's not working as I expected.
There are two properties file in the package 'helloWorld' where also the Messages class resides. messages.properties and messages_de.properties.
I exptected a client with locale 'de_DE' would be served the messages_de file.
But since it doesn't find a messages_de_DE file it just drops to the default file.
The help site states that it would choose it in the hierachical order I expected.
Is there something I missed?
RWT.getLocale() always returns the first entry of the Accept-Language header.
ResourceBundle shows the same behaviour. It always defaults to the current system locale. Since mine is german it choses the de_DE file.
I can circumvent it by passing a "-nl en" parameter to my rap application.
The ResourceBundle returns the strings in the correct hierarchical order.
The locale 'en_US' is served by the 'messages_en' file.
I would like to use the solution i found at stackoverflow  to use an empty 'en' file which then uses the default language file when it does not find the key.
This works for my ResourceBundle test but in RAP i get a java.util.MissingResourceException when the messages_en.properties file doesn't contain the appropriate key.