What are some of the strategies for internationalising JSP pages, without duplicating the JSP page for each language?
The property files for bundles must follow some standard naming conventions. The suffix must always be .properties. Also, since a locale is typically defined in Java via a country code and/or a language code, the name of the bundle has to correlate with the locale it serves.
For example, the property file serving as the bundle for Germany may be named Message_de_DE.properties. Similarly, the bundle for France can be named Message_fr_FR.properties, and so on. Later, when your application needs to service a specific locale, it can do so using predefined constants like Locale.GERMANY, Locale.FRANCE, and so forth. Then, using the class java.util.PropertyResourceBundle, it should be able to load the corrosponding resource bundle serving the locale and access the values for the resources by name, just like you would with a Hashtable object.