JSF中f:loadBundle標(biāo)簽的使用方法
JSF f:loadBundle標(biāo)簽是JSF提供的一個支持JSP本地化(多語言支持)操作的標(biāo)簽。
JSF提供了一套本地化支持的機(jī)制,包括消息,頁面顯示等。 JSF f:loadBundle標(biāo)簽是提供的頁面顯示方面的支持JSP本地化(多語言支持)操作的標(biāo)簽。
使用f:loadBundle標(biāo)簽,可以為不同的來訪用戶呈現(xiàn)不同語言界面的頁面從而簡單地讓你的JSF WEB應(yīng)用實現(xiàn)國際化支持。
JSF f:loadBundle用法:
JSF f:loadBundle的使用非常簡單
1,首先,為不同的語言分別準(zhǔn)備一個.properties文件。比如,若要支持英文,中文,日文,則英文可以為Messages.properties,中文為Messages_zh.properties,日文為Messages_ja.properties等。
文件內(nèi)容的形式為
:
message-key=message-value
userName=用戶名:
.properties文件打包之前必須轉(zhuǎn)換成ascii碼形式,可以以目錄階層形式加以組織,并置于WEB-INF目錄下。比如資源文件的目錄階層可以為:
WEB-INF\com\test\resource\Messages.properties
WEB-INF\com\test\resource\Messages_zh.properties
WEB-INF\com\test\resource\Messages_ja.properties
2,然后在JSP里通過f:loadBundle標(biāo)簽加載該.properties文件,比如加載具有上面階層的資源文件:
<f:loadBundle basename="com.test.resource.Messages" var="msg" />
其中basename為資源文件所在的位置(com\test\resource)與名稱(Messages)。var為加載后的變量名。JSF可以根據(jù)用戶瀏覽器的配置自動裝載匹配的資源文件。
然后使用h:outputText輸出頁面內(nèi)容
<h:outputText value="#{msg['message-key']}"></h:outputText>
或者
<h:outputText value="#{msg.message-key}"></h:outputText>
就可以了。
另外,需要JSF支持所規(guī)定的語言,需要在faces-config.xml加上類似以下配置:
- <faces-config>
- <application>
- <locale-config>
- <default-locale>en</default-locale>
- <supported-locale>zh</supported-locale>
- <supported-locale>ja</supported-locale>
- </locale-config>
- </application>
- </faces-config>
該配置告訴JSF框架,默認(rèn)的語言配置以及需要支持哪些語言配置。
【編輯推薦】