<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
	<channel>
		<title><![CDATA[Latest posts for the topic "How to use internationalization in DisplayTags"]]></title>
		<link>http://recipes.mentaframework.org/posts/list/3.page</link>
		<description><![CDATA[Latest messages posted in the topic "How to use internationalization in DisplayTags"]]></description>
		<generator>JForum - http://www.jforum.net</generator>
			<item>
				<title>How to use internationalization in DisplayTags</title>
				<description><![CDATA[ If you don't have any i18n file, follow this link:<br /> http://www.mentaframework.org/i18n.jsp<br /> <br /> if you want create your own DisplayTags, follow this link:<br /> http://recipes.mentaframework.org/posts/list/34.page<br /> <br /> To use internationalization in DisplayTags, do the following:<br /> <br /> 1) Create your taglib. For example:<br /> <br /> [code]public class NumberOfFriendsTag extends PrintTag {<br />     <br />     public String getStringToPrint() throws JspException {<br />         <br />         Output output = action.getOutput();<br />         <br />         User user = (User) output.getValue("user");<br />         <br />         int nFriends = user.getNumberOfFriends();<br />         <br />         if (nFriends == 1) {<br />             <br />             return "You have 1 friend!";<br />             <br />         } else if (nFriends == 0) {<br />             <br />             return "You do not have any friend!";<br />             <br />         } else {<br />             <br />             return "You have " + nFriends + " friends!";<br />             <br />         }<br />     }<br /> }<br /> [/code]<br /> <br /> 2) Flaunt your taglib where are the i18n files. To do that, use<br /> <br /> [code]I18N i18n = I18NMap.getI18N("/WEB-INF/i18n/master", loc);[/code]<br /> <br /> inside your [i]getStringToPrint()[/i] method. After that, use<br /> <br /> [code]i18n.get( "chave_no_arquivo_i18n" );[/code]<br /> <br /> to get the internationalized text.<br /> <br /> The first string is the path to your master file, from the application root. [i]loc[/i] is the user localeé o locale do usuário, available [i]automagically[/i] inside the class.<br /> <br /> See the code:<br /> <br /> [code]public class NumberOfFriendsTag extends PrintTag {<br />     <br />     public String getStringToPrint() throws JspException {<br /> <br />         // Método para pegar os arquivos i18n.<br />         I18N i18n = I18NMap.getI18N("/i18n/master", loc);<br />         <br />         Output output = action.getOutput();<br />         <br />         User user = (User) output.getValue("user");<br />         <br />         int nFriends = user.getNumberOfFriends();<br />         <br />         if (nFriends == 1) {<br />             <br />             return i18n.get( "apenas_um_amigo" );<br />             <br />         } else if (nFriends == 0) {<br />             <br />             return i18n.get( "nenhum_amigo" );<br />             <br />         } else {<br />             <br />             //return "Você tem " + nFriends + " amigos!";<br />             return i18n.get( "voce_tem" ) + " " + nFriends + " " + i18n.get( "amigo_plural" );<br />             <br />         }<br />     }<br /> }<br /> [/code]<br /> <br /> Master file:<br /> <br /> /i18n/master_pt_BR.i18n<br /> [code]apenas_um_amigo = Você tem 1 amigo!<br /> nenhum_amigo = Você não tem amigos!<br /> voce_tem = Você tem<br /> amigo_plural = amigos[/code]<br /> <br /> /i18n/master_en_US.i18n<br /> [code]apenas_um_amigo = You have 1 friend.<br /> nenhum_amigo = You don't have any friend.<br /> voce_tem = You have<br /> amigo_plural = friends[/code]]]></description>
				<guid isPermaLink="true">http://recipes.mentaframework.org/posts/preList/61/67.page</guid>
				<link>http://recipes.mentaframework.org/posts/preList/61/67.page</link>
				<pubDate><![CDATA[Thu, 29 Jul 2010 12:21:16]]> GMT</pubDate>
				<author><![CDATA[ rodrigo.avila]]></author>
			</item>
	</channel>
</rss>
