Webcam Chat Satellite Internet QuickBooks Advice international calling cards international phone cards
Feedback Request New Tips Print Email

Implement Internationalization and Localization in JSF

Author : JavaBeat
Date : Thu Jul 24th, 2008
Topic : jsf

Internationalization and Localization

Internationalization and Localization are important features for an web based application. Internationalization is implementing the features in your application to support multiple languages. Localization is creating text in a specific language that is presented through an internationalized application

The following example program demonstrates very simple program for implementing this concepts. if you llok into the faces-config.xml file, locale-config element is used for specifying the default locale and supported locale information. In this sample application we have provided default as English and supported as French.

Use resource-bundle element to specify the name of the properties file to be used. For exmaple if you create a resource bundle name as Messages, then all the language letters will be suffixed with the file name.In our case French locale is named as "Messages_fr". The default will be "en", it is not required to specify explicitly.



<%@taglib prefix="f" uri="http://java.sun.com/jsf/core"%>
<%@taglib prefix="h" uri="http://java.sun.com/jsf/html"%>
<html>
<body>
<f:view>
<h:form>
<h:commandButton value="#{msg.cancel}" action="fail"/>
<h:commandButton value="#{msg.submit}" action="success"/>
</h:form>
</f:view>
</body>
</html>

faces-config.xml



<?xml version='1.0' encoding='UTF-8'?>
<faces-config version="1.2"
xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-facesconfig_1_2.xsd">
<application>
<locale-config>
<default-locale>en</default-locale>
<supported-locale>fr</supported-locale>
<supported-locale>de</supported-locale>
</locale-config>
<resource-bundle>
<base-name>javabeat.net.messages.Messages</base-name>
<var>msg</var>
</resource-bundle>
</application>
</faces-config>

Messages.properties


cancel=Cancel
submit=Submit

Messages_fr.properties


cancel=annuler
submit=envoyer
Feedback Request New Tips Print Email

Favorites
Latest QnA
SCJD Tips
When we start a thread by applying start() method on it ,how does it knows that to execute run()method?
About Wrapper class in Java
How to configure weblogic 7.0 in MyEclipse?
Static Block and Static Initializer in Java

JavaBeat Website (2004-2009), India
javabeat | about us | useful resources
Copyright (2004 - 2009), JavaBeat