Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment:

Update formatting and nomenclature

Description

WebWork The framework supports internationalization (in short, i18n) in two different places: the UI tags and the action/field error messages.

...

, including the Validation messages.

Resource Bundle Search Order

Wiki Markup
{snippet:id=searchorder|javadoc=true|url=com.opensymphony.xwork.util.LocalizedTextUtil}

For more information, checkout see the LocalizedTextUtil class.

Tip
titlePackage Hierarchyhierarchy
Wiki Markup
{snippet:id=packagenote|javadoc=true|url=com.opensymphony.xwork.util.LocalizedTextUtil}

Examples

There are several ways to access the message resources, including getText, the text tag, and the i18n tag.

Using getText

...

To display i18n text, you can use a call to getText() in the property tag, or any other tag, such as the UI tags. (this The getText technique is especially useful for labels of UI tags.):

Wiki Markup
{snippet:id=i18nExample|javadoc=true|lang=xml|url=com.opensymphony.webwork.components.Property}

Text Tag

Using the text tag

The text tag retrieves a message from the default resource bundle.You may also use the text tag:

Wiki Markup
{snippet:id=i18nExample|javadoc=true|lang=xml|url=com.opensymphony.webwork.components.Text}

Using the I18n

...

tag

The i18n tag pushes an arbitrary Also, note that there is an i18n tag that will push a resource bundle on to the stack, allowing you to display text that would otherwise not be part of the resource bundle search hierarchy mentioned previouslyvalue stack. Other tags within the scope of the i18n tag can display messages from that resource bundle.

Wiki Markup
{snippet:id=i18nExample|javadoc=true|lang=xml|url=com.opensymphony.webwork.components.I18n}
Tip

 

i18n with SiteMesh
i18n with SiteMesh

Internationalizing

Warning

Internationalization in SiteMesh decorators is possible, but there are a few quirks about it. Check out the SiteMesh page to learn how to be integrate WebWork and SiteMesh, including integration tipsSee SiteMesh for more.

I18n Interceptor

See I18n Interceptor for more info. It basically Essentially, the i18n Interceptor pushes a locale into the ActionContext map upon every request. Webwork (components, ActionSupport etc.) honours this and hence every i18n related aspect will used this locale. Its a pretty elegant way of changing locale upon request as well.

...

The framework components that support localization all utilize the ActionContext locale. See I18n Interceptor for details.

Global Resources (action.custom.i18n.resources) in

...

action.properties

Wiki Markup
{snippet:id=globalresource|javadoc=true|url=com.opensymphony.xwork.util.LocalizedTextUtil}

Comparison with

...

SAF1

Wiki Markup
{snippet:id=strutscomparison|javadoc=true|url=com.opensymphony.xwork.util.LocalizedTextUtil}