`
aaronluo
  • 浏览: 29430 次
  • 性别: Icon_minigender_1
  • 来自: 武汉
社区版块
存档分类
最新评论

Facelets如何进行i18n

阅读更多

如果使用JSP作为JSF的视图,那么在每个也没可以用<f:loadBundle>加载国际化文件,但是使用Faclets如何进行国际化文件加载呢?我的做法如下

1. 在faces-config.xml中增加如下配置:

<application>
	<view-handler>com.sun.facelets.FaceletViewHandler</view-handler>
	<locale-config>
		<default-locale>zh_CN</default-locale>
	</locale-config>
	<message-bundle>message</message-bundle>

</application>

 2. 在/WEB-INF/classes/下增加message.properties和message_zh_CN.properties两个文件,一个是默认资源文件,一个是中文资源文件。可以根据自己应用的需要添加其他语言支持。

3. 在模版文件,比如/WEB-INF/facelets/template.xhtml中加载这个资源

<html xmlns="http://www.w3.org/1999/xhtml"
	xmlns:ui="http://java.sun.com/jsf/facelets"
	xmlns:f="http://java.sun.com/jsf/core"
	xmlns:h="http://java.sun.com/jsf/html">

<f:loadBundle basename="message" var="msg"/>

......

</html>

 4. 在使用这个模版的客户端文件中不必再进行加载,直接使用即可,例如welcome.xhtml

<ui:composition xmlns="http://www.w3.org/1999/xhtml"
	xmlns:ui="http://java.sun.com/jsf/facelets"
	xmlns:f="http://java.sun.com/jsf/core"
	xmlns:h="http://java.sun.com/jsf/html"
	template="/WEB-INF/facelets/template.xhtml">
	
<ui:define name="title">
${msg.app_title}

</ui:define>
....

</ui:composition>

 因为我使用的是MyFaces JSF 1.1的实现,据说JSF1.2可以完全在faces-config.xml中进行配置,有机会试试~~

分享到:
评论

相关推荐

    Oracle ADF框架下实现应用国际化(i18n)示例

    在Oracle ADF框架下实现应用国际化(i18n)是一项重要的功能,它使得软件可以适应不同语言和地区的用户需求。以下是对该主题的详细阐述: 一、Oracle ADF应用国际化基础 Oracle ADF支持JDK的Java国际化(i18n)标准...

    facelets中文教程(初级+高级)

    - Facelets支持i18n,可以通过`&lt;f:loadBundle&gt;`标签加载资源包,根据用户浏览器设置显示相应语言的内容。 本教程涵盖了Facelets的初级和高级知识,不仅教授如何创建基本的Facelets页面,还介绍了如何利用其高级...

    jsfvalidationlocalization:演示Web应用程序,演示了验证I18N可访问性的基础知识和最佳实践,可随时用作新JSF项目蓝图的一部分

    3. **Web页面** - 使用JSF组件和EL表达式构建的Facelets文件,展示验证和I18N的使用。 4. **配置文件** - 比如`faces-config.xml`,可能包含有关验证和导航规则的信息。 5. **部署描述符** - `web.xml`文件,定义了...

    myfaces-core-1.2.2-src.zip

    8. **国际化与本地化**:MyFaces Core提供了一套完整的I18N/L10N解决方案,帮助开发者轻松实现应用程序的多语言支持。 9. **Faces Servlet**:作为JSF的入口点,Faces Servlet负责处理JSF的HTTP请求,解析请求参数...

    jsf2项目开发及所需各种标签集合

    此外,描述中还提到了国际化多语言支持,即i18n,意味着项目需要能够支持多种语言。AJAX技术用于实现异步Web交互,提高用户体验。项目搭建包括环境配置和应用结构的建立,异常处理机制用于捕获和处理应用中可能出现...

    JSF学习笔记

    8. **国际化(Internationalization, I18N)**:JSF支持多语言应用,开发者可以通过资源库文件来管理不同语言的文本。 9. **富客户端接口(Rich Client Interface, RCI)**:JSF可以与富客户端库,如PrimeFaces、...

    JSF1.2 jar包和相关doc

    6. **国际化和本地化**:JSF 1.2提供了强大的I18N(国际化)和L10N(本地化)支持,允许开发者轻松地创建多语言应用。 7. **自定义标签和组件**:开发者可以创建自定义的UI组件和标签,扩展JSF的功能。这可以通过...

    java 文本标签大全 api

    JSTL的核心部分包括Core、Format、I18N、Functions和SQL五个标签库。 2. EL表达式语言(Expression Language) EL是JSP 2.0引入的一种轻量级的脚本语言,用于在JSP页面中访问JavaBean属性。它简化了数据绑定,使得...

    JSF 2.0 开发资料

    - **国际化(I18N)**:JSF 2.0 提供了强大的国际化支持,允许应用程序轻松适应不同的语言和文化环境,通过资源束进行文本和格式化信息的本地化。 ##### 5. **性能优化** - **资源压缩**:JSF 2.0 可以自动压缩 ...

    JSF 标签快速参考及示例

    此外,JSF支持国际化(i18n),通过资源包(Resource Bundle)提供不同语言的文本。 **Facelets** 是JSF推荐的视图层技术,它比传统的JSP更简洁,更易于维护。Facelets模板允许开发者使用XML语法来组织组件,并可以...

    jstl java 标签库

    6. JSTL Internationalization(i18n)标签库: 用于实现多语言支持。`&lt;fmt:message&gt;`和`&lt;fmt:formatDate&gt;`等标签可以帮助开发人员轻松地处理日期、时间的格式化和国际化文本。 7. 使用JSTL的优点: - 提高代码...

    dsTest.war.zip_site:www.pudn.com

    国际化(i18n,因为“internationalization”一词中有18个字母)和全球化(l10n,"localization"的缩写)是软件开发中的关键考虑因素,特别是对于面向全球用户的Web应用。JSF框架提供了内置的支持来处理这些需求。它...

    jsf and apache myfaces in action

    Apache MyFaces提供了许多高级特性,包括但不限于AJAX支持、国际化(i18n)和主题化。AJAX的集成使得Web应用能够实现更流畅的用户体验,无需完全刷新页面即可更新部分视图。国际化支持让应用能够适应不同语言和文化...

    JSF完全参考手册 所有代码

    10. **国际化(Internationalization, I18N)**:JSF支持多语言,可以轻松地为不同地区的用户提供本地化服务。 《JSF完全参考手册》中的代码示例涵盖了这些概念的使用,包括组件的创建和使用、事件处理、数据绑定、...

    jsf-bestpractice:JSF2 最佳实践集

    10. **Internationalization (i18n) and Localization (l10n)**:JSF支持多语言和区域设置,可以在应用程序中轻松添加国际化和本地化支持。 11. **Error Handling**:定义全局和组件级的错误处理策略,确保应用程序...

Global site tag (gtag.js) - Google Analytics