2013-04-11 48 views
0

在我看见了,我想了解使用在code..can人只是单纯的expalain给我的i18n(国际化)的,为什么它的存在..我只是想undersand代码段为什么有“i18n.createTitle”这是否意味着,它翻译的语言为英语那种国际化还是什么的?这可能是一个愚蠢的问题,但我是一个newbie..thanks ..在上下文中的含义i18n的

<ui:composition template="/_decorator.xhtml"> 
    <ui:define name="title">#{i18n.createTitle}</ui:define> 
    <ui:define name="heading">#{i18n.createHeading}</ui:define> 
    <ui:define name="body"> 

回答

1

在几句话:你有一个属性文件为每种语言。在这些文件中,你必须为每个文本块的标签。例如:

i18n_ES.properties:(ES西班牙)

helloworld=Hola Mundo 
share_button=Comparte esta entrada 

i18n_EN.properties:(EN为英语)

helloworld=Hello World 
share_button=Share this post 

浏览器请求通常具有在报头中的语言偏好,所以响应使用它来选择文本。如果你想支持更多的语言,你需要创建更多的属性文件。

然后可以使用一个I18N加载属性并请求文本:i18n.helloworld,例如。