Stapler depends on localizer for the i18n support.
For Jelly view scripts, the convention is to place localized message
resource files by using the same base name. For example, if you are
writing foo.jelly
, its property files will be placed in files like
foo.properties
and foo_ja.properties
.
In this set up, Jelly view scripts can refer to message resources by
using a special expression of the form ${%KEY(arg1,arg2,…)}
. The
messages are formatted by using MessageFormat
, and arguments are
individually parsed as JEXL scripts. If there’s no arguments,
parenthesis can be omitted and thus it can be simply written as
${%KEY}
.
If you need to refer to message resources from within a JEXL expression,
you can use a string literal notation "%KEY(arg1,arg2,…)"
or its
argument-less short form "%KEY"
. For example,
${obj.methodCall(1,true,"%Message")}
If the specified KEY is not available in the property files, the key
itself will be used as a formatting string. The key can contain any
character except '(' and '}'. This convenient defaulting allows you to
skip writing foo.properties
most of the time (that is, you’d only need
property files for translations.)