labels"
From Documentation
Line 3: | Line 3: | ||
= labels - java.util.Map = | = labels - java.util.Map = | ||
A map of all [[ZK Developer's Reference/Internationalization/Labels|internationalization labels]] belonging to the current locale (<javadoc method="getCurrent()">org.zkoss.util.Locales</javadoc>). | A map of all [[ZK Developer's Reference/Internationalization/Labels|internationalization labels]] belonging to the current locale (<javadoc method="getCurrent()">org.zkoss.util.Locales</javadoc>). | ||
+ | |||
+ | For example, if you have a properties file as follows: | ||
+ | |||
+ | <source lang="text"> | ||
+ | owner=Foo Inc. | ||
+ | application.name=Killer | ||
+ | application.title=Killer 2011 | ||
+ | </source> | ||
+ | |||
+ | Then, you could access them with this implicit object as follows. | ||
+ | |||
+ | <source lang="xml"> | ||
+ | <grid> | ||
+ | <row>${labels.owner}</row> | ||
+ | <row>${labels.application.name}</row> | ||
+ | <row>${labels.application.title}</row> | ||
+ | </grid> | ||
+ | </source> | ||
+ | |||
+ | Notice that the key of a property could be name as ''key1.key2'', and EL expressions could retrieve them correctly. | ||
+ | |||
+ | <blockquote> | ||
+ | ---- | ||
+ | '''Under the hood:''' | ||
+ | The <tt>labels</tt> object is actually the map returned by <javadoc method="getSegmentedLabels()">org.zkoss.util.resource.Labels</javadoc>. Furthermore, if the key of a property contains dot ('''.'''), all properties with the same prefix are grouped as another map. For example, <tt>${labels.application}</tt> (i.e., <code>Labels.getSegmentedLables().get("application")</code>) will return a map containing two entries (<tt>name</tt> and <tt>title</tt>) in the previous example. | ||
+ | </blockquote> | ||
=Version History= | =Version History= |
Revision as of 07:01, 28 March 2011
labels - java.util.Map
A map of all internationalization labels belonging to the current locale (Locales.getCurrent()).
For example, if you have a properties file as follows:
owner=Foo Inc.
application.name=Killer
application.title=Killer 2011
Then, you could access them with this implicit object as follows.
<grid>
<row>${labels.owner}</row>
<row>${labels.application.name}</row>
<row>${labels.application.title}</row>
</grid>
Notice that the key of a property could be name as key1.key2, and EL expressions could retrieve them correctly.
Under the hood: The labels object is actually the map returned by Labels.getSegmentedLabels(). Furthermore, if the key of a property contains dot (.), all properties with the same prefix are grouped as another map. For example, ${labels.application} (i.e.,
Labels.getSegmentedLables().get("application")
) will return a map containing two entries (name and title) in the previous example.
Version History
Version | Date | Content |
---|---|---|
5.0.7 | March, 2011 | This implicit object was introduced. |