com.jboss.demo.message.MessageBundle.properties
user_password=password
user_name=user name
button_login=login
com.jboss.demo.message.MessageBundle_en.properties
user_password=password
user_name=user name
button_login=login
com.jboss.demo.message.MessageBundle_zh_CN.properties
user_password=\u5BC6\u7801
user_name=\u7528\u6237\u540D
button_login=\u767B\u5F55
JSF会根据浏览器送
来的Accept-Language header中的内容来决定该使用哪一个资源文件名称,例如:
Accept-Language: zh_CN, en-US, en
如果浏览器送来这些header,则预定义会使用简体中文,接着是美式英文,再
来是英文语系, 如果找不到对应的信息资源文件, 则会使用预定义的信息资源文件。
<f:view locale="en">
<f:loadBundle basename="com.jboss.demo.message.MessageBundle" var="msgs"/>
<h:form>
<h3>请输入您的名称</h3>
<h:outputText value="#{user.errorMsg}"></h:outputText> <br/>
<h:outputText value="#{msgs.user_name}" /> : <h:inputText value="#{user.name}" /> <br/>
密码:<h:inputSecret value="#{user.password}" /> <br/>
<h:commandButton value="提交" action="#{user.verify}" />
</h:form>
您也可以在faces-config.xml中设定语系,例如:
<faces-config>
<application>
<local-config>
<default-locale>en</default-locale>
<supported-locale>zh_CN</supported-locale>
</local-config>
</application>
.....
</faces-config>
在<local-config>一定有一个<default-locale>,而<supported-locale>可以有好几
个,这告诉JSF您的应用程序支持哪些语系。
或加截用户的选择参数
<f:view locale="#{user.locale}">