f:loadBundle是JSF提供的一个支持JSP本地化(多语言支持)操作的标签。
JSF提供了一套本地化支持的机制,包括消息,页面显示等。
f:loadBundle是JSF提供的页面显示方面的支持JSP本地化(多语言支持)操作的标签。
使用
f:loadBundle标签,可以为不同的来访用户呈现不同语言界面的页面从而简单地让你的JSF WEB应用实现国际化支持。
f:loadBundle用法:
f:loadBundle的使用非常简单:
1,首先,为不同的语言分别准备一个.properties文件。比如,若要支持英文,中文,日文,则英文可以为Messages.properties,中文为Messages_zh.properties,日文为Messages_ja.properties等。
文件内容的形式为:
message-key=message-value
userName=用户名:
.properties文件打包之前必须转换成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标签加载该.properties文件,比如加载具有上面阶层的资源文件:
<f:loadBundle basename="com.test.resource.Messages" var="msg" />
其中basename为资源文件所在的位置(com\test\resource)与名称(Messages)。var为加载后的变量名。JSF可以根据用户浏览器的配置自动装载匹配的资源文件。
然后使用h:outputText输出页面内容
<h:outputText value="#{msg['message-key']}"></h:outputText>
或者
<h:outputText value="#{msg.message-key}"></h:outputText>
就可以了。
另外,需要JSF支持所规定的语言,需要在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框架,默认的语言配置以及需要支持哪些语言配置。
参考:
JSF本地化策略[LifevV.COM] Sun JavaServer Faces API SpecificationsSun JavaServer Faces Tag Library Documentation
分享到:
相关推荐
- `<f:loadBundle>`:加载资源包,用于国际化和本地化。 3. **JSF HTML标签**: - `<h:form>`:创建HTML表单,是所有输入组件的容器。 - `<h:outputText>`:显示文本,可以绑定到bean的属性。 - `<h:inputText>...
- **功能**:`f:loadBundle` 是JSF提供的一种支持本地化(多语言支持)操作的标签。 - **使用示例**: - JSP: ```jsp <f:loadBundle basename="com.test.resource.Messages" var="msg"/> ``` - **解析**:这里...
### 精通JSF标签一字不漏:深入解析关键标签功能及应用场景 #### f:actionListener —— 自定义事件监听器的配置 在JavaServer Faces (JSF) 框架中,`f:actionListener` 标签提供了一种机制来为`h:commandLink`、`...
8. **国际化和本地化**:JSF支持多语言环境,可以通过`<f:loadBundle>`标签加载资源包,实现界面文本的本地化。 9. **Ajax支持**:JSF 2.0引入了`<f:ajax>`标签,使得开发者可以轻松实现部分页面更新,提高用户体验...
<f:loadBundle basename="messages" var="msg" /> <h:outputFormat value="#{msg.hello}"> <f:param value="John Doe" /> </h:outputFormat> ``` 如果`messages.properties`文件中定义了`hello=Hello, {0}`,...
JSF标签详解 JSF(JavaServer Faces)是一种用于构建Web应用程序的框架,它提供了一组标准的UI组件和API,帮助开发者快速构建Web应用程序。JSF标签是JSF框架中的一部分,它们是用于在JSP页面中定义UI组件和事件处理...
* loadBundle 加载资源包 * verbatim 向页面中添加标签 * selectItem 指定 UISelectOne 或 UISelectMany 组件的一个项目 * selectItems 指定 UISelectOne 或 UISelectMany 组件的多个项目 三、JSF HTML 标签库 * ...
根据提供的文件信息,我们可以深入探讨JSF(JavaServer Faces)技术及其相关标签的使用方法。以下是对该文档中提到的一些关键知识点的详细解读。 ### JSF 标签使用参考手册 #### 文档概述 该文档名为《JSF 标签...
f:loadBundle f:param f:phaseListener f:selectItem f:selectItems f:setPropertyActionListener f:subview f:validateDoubleRange f:validateLength f:validateLongRange f:validator f:...
<f:loadBundle basename="messages" var="msgs" /> <h:outputFormat value="#{msgs.welcome_message}"> <f:param value="#{user.name}" /> </h:outputFormat> ``` ##### 2.2 输入类标签 输入类标签用于收集...
通过`<f:loadBundle>`标签,可以加载相应的资源文件。 ### 10. 整合其他技术 JSF 1.2能够很好地与其他Java EE技术(如EJB、JPA、CDI等)集成,构建完整的企业级应用。 ### 11. 性能优化 JSF 1.2引入了一些性能...
在页面中,可以通过<f:loadBundle>标签加载message bundle。在创建Message Bundle文件前,需要先在src目录下创建对应的包,然后使用MyEclipse的新建文件向导创建MessageBundle.properties文件。这个文件包含了JSP...
7. **JSF国际化**:JSF提供了`<f:resources>`和`<f:loadBundle>`标签来支持多语言。通过定义资源文件,开发者可以轻松地为不同地区提供本地化内容。 8. **JSF验证与消息**:JSF内置了强大的验证机制,通过`<f:...
12. JSF (JavaServer Faces) 资源包:在 JSF 中,加载资源属性文件通常使用 `<f:loadBundle>` 标签,例如 `<f:loadBundle basename=”readmeCN” var=”cn”>`。 13. JSF 动态导航:在 JSF 应用中,要实现在 login....
- `<f:loadBundle>`:加载资源文件。 - **basename**:资源文件的基础名。 - **var**:存储资源文件的变量名。 - `<f:selectItem>`:为选择类标签提供选项。 - **itemLabel**:显示的文本。 - **itemValue**:...
- **loadBundle**:加载资源文件。 - **basename**:资源文件基名。 - **var**:存储资源文件的对象名。 - **selectItem**:用于选择框选项。 - **itemLabel**:显示文本。 - **itemValue**:对应的值。 - **f:...
此外,JSF还提供了`<f:loadBundle>`标签来动态加载资源包,以及`<h:outputText>`等组件来显示国际化的文本。 在Eclipse中设置JSF工程,首先需要安装适当的JSF插件,如JBoss Tools或Eclipse Web Tools Platform (WTP...
- Facelets支持i18n,可以通过`<f:loadBundle>`标签加载资源包,根据用户浏览器设置显示相应语言的内容。 本教程涵盖了Facelets的初级和高级知识,不仅教授如何创建基本的Facelets页面,还介绍了如何利用其高级...