Create and using a resource bundle in the tools framework
To create and use a resource bundle within the tools framework:
- Create a properties file and save it in the following directory:
- WC_eardir/properties/com/ibm/commerce/tools/utf/properties
workspace_dir\installedApps\ cell\ WC_instance.ear\properties\com\ibm\commerce\tools\utf\properties
- Open the resources.xml file from:
- WC_installdir/xml/tools/ tools_component_name/
WCDE_installdir\xml\tools\ tools_component_name\
and add the following line:
<resourceBundle name="name" bundle="com.ibm.commerce.tools.properties. filename_with_no_extension" />Where name is the name you want to use to refer to the bundle throughout your code and filename_with_no_extension is the filename for your properties file without the .properties extension.
To use a resource string (from a resource bundle) in your code:
- Retrieve your properties file using the following command
Hashtable myResource = (Hashtable) com.ibm.commerce.tools.util.ResourceDirectory.lookup(String resourceName, Locale locale)Where resourceName is namespace.resource_name.
- Use the following command to retrieve the required information from the hashtable:
String resource = (String)myResource.get("<resource key>");
The following is an example of how to retrieve a resource string to be used in your JSP file:
<%@include file="../common/common.jsp" %> <% CommandContext commandContext = (CommandContext)request.getAttribute(ECConstants.EC_COMMANDCONTEXT); Locale locale = commandContext.getLocale(); Hashtable resourceBundle = (Hashtable) ResourceDirectory.lookup("common.mccNLS", locale); %> ..... ..... ..... <table CELLPADDING="0" CELLSPACING="0" BORDER="0" HEIGHT="100%" WIDTH="100%"> <tr> <td><table CELLPADDING="0" CELLSPACING="0" BORDER="0" WIDTH="100%" HEIGHT="1%"> <tr> <td class="entry_space"> </td> <td class="entry_text"><%= resourceBundle.get("paragraph1") %></td> </tr> <tr><td> </td></tr> <tr> <td class="entry_space"> </td> <td class="entry_text"><%= resourceBundle.get("paragraph2") %></td> </tr> <tr><td> </td></tr> <tr> <td class="entry_space"> </td> <td class="entry_text"><%= resourceBundle.get("paragraph3") %></td> </tr> </table>
There is a requirement for WebSphere Commerce tools to be encoded in UTF-8. All tools pages (JSP files) include the common.jsp file to set the servlet response parameters, which includes:
response.setContentType("text/html;charset=UTF-8");One frequently implemented task in store-related tooling in WebSphere Commerce is the creation of a language selection drop-down list. A selection determines the language, encoding, and cultural formatting preference of the user.
Related concepts
Globalized tools framework
Cultural considerations
Localized store assetsRelated tasks
Create a globalized store
Use resource bundles in store pagesRelated reference
Globalization tips
massload utility (Server environment)