web*_*rap 5 jsf localization seam resourcebundle internationalization
我在某个地方阅读(不再发现它)我可以在资源包中使用EL Expresions,然后在不更改*.xhtml文件的情况下使用它.
some.text=#{someBean.stepsLeft} more
Run Code Online (Sandbox Code Playgroud)
以不同语言切换变量的位置.但实际上它不会工作.我可以使用Interpolator类来处理解析或添加some.text.before some.text.after并让其中一个为空.如果可能的话,我宁愿使用它而不使用interpolator.interpolate().
默认情况下,JSF resourcebundles不会解析EL.但是它默认支持MessageFormatAPI与<h:outputFormat>和结合使用<f:param>.
some.text = {0} more
Run Code Online (Sandbox Code Playgroud)
同
<h:outputFormat value="#{i18n['some.text']}">
<f:param value="#{someBean.stepsLeft}" />
</h:outputFormat>
Run Code Online (Sandbox Code Playgroud)
您甚至可以明确地将其设置为number类型,以便例如1000将显示为1,000或1.000取决于视图区域设置.
some.text = {0,number} more
Run Code Online (Sandbox Code Playgroud)
有关更多格式选项,请参阅MessageFormatAPI文档.
| 归档时间: |
|
| 查看次数: |
1527 次 |
| 最近记录: |