最近在学习RichFaces的东西,看了他的官方指南,顺便试着翻译了一下,呵呵,初次尝试,翻译的较差,肯定有很多不对的地方,希望大牛们指正~~~(下面是指南里面的开篇介绍)
第一章 初识RichFaces
RichFaces是一个开源框架,通过它可以不必编写JavaScript代码而把Ajax的功能引入到现有的JSF应用程序中去。
RichFaces影响到JavaServer Faces 框架的很多方面,包括lifecycle、validation、conversion facilities以及动静态资源的管理。内建的Ajax支持及高度可定制化外观的RichFaces组件,可以很轻松的被引入到JSF应用程序里面去。
RichFaces 的优点:
-
与Ajax协同工作全面突出了JSF的长处。RichFaces完全融入进了JSF的生命周期。其它的一些框架可能仅仅使你感受到managed bean的便利,而RichFaces则是在Ajax的 请求-响应(request-response)周期内,优化了 action与value的变化交互,同时激活了server端校验和转化。
-
在已开发的JSF应用程序上添加了Ajax的性能。RichFaces框架提供了两个组件库(Core Ajax 和 UI)。Core library 把Ajax的性能引入到页面中,因此不需要你写任何的JavaScript代码或者用新的Ajax组件来替换已经写好的组件。RichFaces成功的用页面级的Ajax支持来替换传统的组件级的支持,并且可以在页面来定义事件。一个事件激活了一个Ajax 请求和页面的某些区域,这些区域同步于JSF组件树,并在Ajax 请求 server端改变数据后,显示在client端。
-
通过使用封装好的组件快速创建复杂的视图页面。为了把丰富的用户借口(UI)加入JSF应用程序,RichFaces UI library包含了(大量的)的组件。这个组件库扩展了RichFaces框架,使其包括了(并且还在不断丰富中)大量功能强大的集成Ajax特性的组件,而且这些组件还支持换肤。另外,RichFaces组件被设计用来可以与其它第三方组件库在同一页面内无缝连接,如此一来,你在开发程序时就有了更多的选择。
-
编写你自己的内建Ajax特性的胖组件。我们一直都在努力提高CDK(组件开发工具包,Compontent Development Kit)的性能,使其用于开发新的组件,丰富RichFaces UI library。CDK包括代码生成器以及使用JSP语法的模板,这些功能有助于避免创建组件时的一些重复工作。CDK就像一个不可思议的机器,可以轻松开发出一流的内建Ajax功能的胖组件,甚至比用传统的编码方式开发一个简单的多的组件还要简便。
-
一同打包资源与应用程序的Java类。除了它的核心,RichFaces的Ajax功能为不同的资源如图片、JavaScript代码和CSS样式表的管理提供了高级的支持。这个资源框架可以使你轻松的把这些资源连同你的定制组件的代码一同打入jar包。
-
运行时轻松生成二进制代码。资源框架可以运行时生成images、sounds、Excel试算表等等,例如用熟悉的"Java Graphics2D" library的方法创建images。
-
利用换肤技术创建时尚而丰富的用户界面。RichFaces提供了一个skinnability 特性,通过配置一个名为skin的参数,它可以让你轻松的定义和管理不同的颜色主题和其它的UI参数。因而,可以在JSP代码和Java代码里访问skin参数。RichFaces本身预定义一些皮肤供你使用,但是你也可以很轻松的创建自己的定制皮肤。
-
同时测试和创建components、actions、listeners和pages。全自动测试功能已在我们不远的未来计划中,这个功能将在你开发组件时生成测试用例。这个测试框架不仅能测试组件,而且任何别的server端或者client端的功能包括JavaScript代码。更重要的是,在做这些的时候不必把测试应用程序发布在Servelet容器中。
RichFaces UI组件会越来越易于使用,入门门槛越来越低,这样节省了开发者的时间,并且在创建Web应用程序时,可以立即体会到上面提到的优点。结果就是,经验的积累更快,而使用也更简便。