Java resource bundle
Benefits of using resource bundles
Extracting locale-sensitive objects such as strings from the code (as opposed to hard-coding them) means that the application can handle multiple locales without having to write different code for each locale. It also means that translators can deal with just the translatable text and not the programming code. Therefore, using resource bundles improves the internationalisation and the localisation process of a software product.
Translating a resource bundle
Some CAT tools like OmegaT, OmegaT+, Swordfish or Sun's Open language tools can specifically handle resource bundles. In addition to these, translators can use any text editor to create new resource bundles or to modify existing ones.
JavaPM is a free cross-platform utility that assists software developers in the localization of Java projects. JavaPM converts Java .properties files to XLIFF 1.2 format, allowing their localization using most modern CAT. Once the XLIFF files have been translated, JavaPM inserts the translations into the Java project, creating new .properties files or updating existing ones as necessary. It is not available anymore.
Tools to create resource bundles
The Message Compiler  is a tool to generate resource bundle files from a single source file containing localized text definitions in different languages. The Message Compiler creates also constant definitions for the keys used to access the localized texts with the methods of the Java class ResourceBundle and HTML documentation pages for each language.