为了设置资源绑定,你应该如下例所示在/WEB-INF/web.xml文件中声明一个context-param,并 指定你的资源文件的路径:
<context-param>
<param-name>extremecomponentsMessagesLocation</param-name>
<param-value>org/extremesite/resource/extremecomponentsResourceBundle</param-value>
</context-param>
本示例中资源文件为extremecomponentsResourceBundle,它可以为任何名或者使用已经存在的资源文件。
如果你不指定locale,则它将根据你的servlet request来决定使用哪个资源文件。
在eXtremeTable中可以通过使用TableTag的locale属性来设置它。
<ec:table
items="presidents"
action="${pageContext.request.contextPath}/public/demo/locale.jsp"
title="table.title.president"
locale="de_DE"
>
...
</ec:table>
在这里eXtremeTable将寻找德文资源文件。
eXtremeTable使用一些全局的keys来与用户交互,包括:状态栏的文本信息,Rows Displayed
droplist和不同的tooltips。如果你足够幸运,eXtremeTable已经提供了相应的语言支持
的话,那么你什么也不用担心。否则的话,你需要申明下列keys:
statusbar.resultsFound={0} results found, displaying {1} to {2}
statusbar.noResultsFound=There were no results found.
toolbar.firstPageTooltip=First Page
toolbar.lastPageTooltip=Last Page
toolbar.prevPageTooltip=Previous Page
toolbar.nextPageTooltip=Next Page
toolbar.filterTooltip=Filter
toolbar.clearTooltip=Clear
toolbar.clearText=Clear
toolbar.firstPageText=First
toolbar.lastPageText=Last
toolbar.nextPageText=Next
toolbar.prevPageText=Prev
toolbar.filterText=Filter
column.headercell.sortTooltip=Sort By
column.calc.total=Total
column.calc.average=Average
现在仅支持英语和德语。如果你使用其他语言的话,并能提供相应的翻译的话我将不胜感激。你可以通过
extremecomponents@gmail.com发送给我。
译者注:我已经提供了中文和日文的资源文件。
TableTag属性中能够使用locale方式指定的是:imagePath和title。
在eXtremeTable中,imagePath属性有一个特定的key:table.imagePath。你可以在你的资源文件中
设置这个key为特定语言的目录结构。例如:德文图片可能放在de文件夹下,那么你可以在相应的资源文件中 进行如下设置:
table.imagePath=/extremesite/images/table/de/*.gif
title有一点不同,如果你指定的title属性值包含dot (.)并且你定义了一个资源文件,那么
eXtremeTable将寻找匹配的key。例如,如果你像下例一样在表中指定属性title="table.title.president":
<ec:table
items="presidents"
action="${pageContext.request.contextPath}/public/demo/locale.jsp"
title="table.title.president"
>
...
</ec:table>
那么eXtremeTable将在属性文件中寻找匹配的key:
table.title.president=US Präsidenten
ColumnTag属性中能够使用locale方式指定的是:format和title。
在eXtremeTable中,format属性有一个特定的key:table.fomat.type。参考属性文件的讨论
来了解更多的细节,他们具有同样的概念。日期和货币的format类型定义可能如下所示:
column.format.date=MM/dd/yyyy
column.format.currency=$###,###,##0.00
title有一点不同,如果你指定的title属性值包含dot (.)并且你定义了一个资源文件,那么
eXtremeTable将寻找匹配的key。例如,如果你像下例一样在列中指定属性title="table.column.nickName":
<ec:table
items="presidents"
action="${pageContext.request.contextPath}/public/demo/locale.jsp"
title="table.title.president"
>
<ec:row>
<ec:column property="nickName" title="table.column.nickName" />
</ec:row>
</ec:table>
那么eXtremeTable将在属性文件中寻找匹配的key:
table.column.nickName=Spitzname