<%@ taglib uri="http://jakarta.apache.org/taglibs/i18n-1.0" prefix="i18n" %> Examples of I18N Custom Tag Library Tag Usage This page shows how multiple bundles can be used together by declaring scripting variables and by nesting the i18n:message tags inside an i18n:bundle tag. It also shows various ways of specifying the locale to an i18n:bundle tag.
Bundles that define scripting variables can be accessed by message tags with a bundleRef attribute. Both bundles below use the default browser locale for the bundle.
<i18n:bundle baseName="org.apache.taglibs.i18n.i18n-test"
             id="bundle1"/>
<i18n:bundle baseName="org.apache.taglibs.i18n.i18n-test2"
             id="bundle2"/>
default:test1 = <i18n:message key="test1"/><br/>
bundle1:test1 = <i18n:message bundleRef="bundle1" key="test1"/><br/>
bundle2:test1 = <i18n:message bundleRef="bundle2" key="test1"/><br/>
default:test1 =
bundle1:test1 =
bundle2:test1 =

Message nested inside a bundle tag - locale from session. (<%= session.getAttribute("userLocale") %>)
  <i18n:bundle baseName="org.apache.taglibs.i18n.i18n-test"
               localeRef="userLocale">
    <i18n:message key="test1"/>
  </i18n:bundle>
  

Message nested inside a bundle tag - locale from browser. (<%= bundle1.getLocale() %>)
  <i18n:bundle baseName="org.apache.taglibs.i18n.i18n-test">
    <i18n:message key="test1"/>
  </i18n:bundle>
  

Message nested inside a bundle tag - locale hardcoded. (Locale.US)
  <i18n:bundle baseName="org.apache.taglibs.i18n.i18n-test">
               locale="<%= java.util.Locale.US %>">
    <i18n:message key="test1"/>
  </i18n:bundle>