日期:2014-05-18  浏览次数:20735 次

JSF 2006大事记上篇
2006年是JSF迈向实用的第一个年头。这一年的上半年,JSF发生了几件大事:1)获得Framework   of   the   Year荣誉称号;2)   Sun发布Java   Studio   Creator   2;3)   Exadel实现JSF对Ajax的支持;4)   Apache推出Myfaces   Core   1.1.3和Tomahawk   1.1.2;5)   Sun推出JavaServer   Faces   1.2。  

        1.   引子  

        随着新年脚步的临近,2006终于要离我们而去了。如同所有的新旧交替一样,在2006的最后几天里,人们一如既往地忙碌着,向着自己年初设定的目标发起最后的攻击。盘点自己的收获,计算自己的得失,岁末的时光里,有人欢喜有人愁。成功者踌躇满志,急切地规划着来年的蓝图;失败者卧薪尝胆,暗暗许下东山再起的誓言。物竞天择,适者生存,伴随着孔子“逝者如斯夫,不舍昼夜”的声声叹息,生活在斗转星移中继续着沧海桑田的变化。  

        对于JSF来说,2006意味着什么?是功成名就还是碌碌无为?作为JSF的始作俑者,Sun应该举杯痛饮胜利的香槟,还是低头咽下自己酿造的苦酒?没有人可以一言以蔽之,因为在JSF身上,发生了太多的事情。现在,就让我们站在公正的角度,按时间顺序,回顾一下JSF在2006走过的路程,成功也好,失败也罢,让事实去给JSF作个总结吧。  

        2.   JSF获得Framework   of   the   Year荣誉称号  

        2006年JSF有个好的开端。元月10日,来自Develop.com的消息让Sun十分开心,JSF赢得了Framework   of   the   Year的荣誉称号。与JSF同台竞争的,全是大名鼎鼎的框架,包括Eclipse   platform,Microsoft   .NET   2.0   Framework,Spring   Framework和Ruby   on   Rails,对手的不凡,让JSF这块金牌显得特别有份量。  

        如同上一个年头,Sun在本年赢得了Developer.com的许多奖项,这主要是由于Sun发明了Java语言,Sun所制定的规范,现在成为了绝大部分Java工业的技术标准。Java及其多不胜数的规范,继续占领着企业开发领域的制高点,尤其是在Web领域。  
在过去的十年中,借助JCP(Java   Community   Process)的威力,Sun不遗余力地倾听开发人员的呼声,顺应软件开发市场的趋势,持续地改进和提高Web技术。最初的Web技术是Servlet,人们抱怨太多Java里有太多的HTML,然后是标准的JavaServer   Pages技术,人们的抱怨变成了HTML里有太多的Java。最终Sun开发了一个新的Web框架标准JavaServer   Faces。JSF的第一个规范发布于2004年3月(JSR   127),现在这项技术得到了大多数主要厂商的支持,包括IBM,Oracle,BEA,Borland,和Apache   基金等,也正因为如此,市场上大多数主要的IDE都内置了对JSF的支持,或者将要提供内置的JSF支持。  

        JSF获得Framework   of   the   Year的原因,是因为JSF是一项基于JSP技术的Java   Web应用框架,其目标是简化J2EE应用中用户界面的开发。JSF有一组完整的API,用来表达用户界面组件,管理组件状态,处理事件,验证输入,定义页面导航和支持国际化和可访问性。除了Managed   Beans技术和客户端状态管理,JSF还全面支持标签库和服务器端事件模式。  

        JSF获奖的另一个原因,是J2EE应用开发中对于标准GUI组件的需求。在JSF规范推出之前,不同的软件开发商都用JSF和HTML开发自己的用户界面,各自为政,一盘散沙,直接导致维护的困难。JSF有点类似ASP.NET的web   forms,不过,JSF是纯Java的。JSF和最流行的Struts框架有着良好的集成性,弥补了Struts在用户界面上的不足。事实上,Struts的主要贡献者Craig   MacLanahan,也是JSF的首席设计师。  

        总之,JSF是一项可信赖的标准技术,能极大地促进J2EE应用的GUI开发。JSF在开发人员当中的流行,使之成为Developer.com当之无愧的Framework   of   the   Year赢家。

3.   Sun发布Java   Studio   Creator   2  

        JSF从设计上就是面向工具的,因此,工具的支持,对JSF的推广和应用尤为重要。Sun为此作出了不懈的努力,2006年元月26日,Sun的JSF集成开发环境Java   Studio   Creator   2在人们的长久期待中,终于推出了。Sun对JSC2的发布非常慎重,因此,JSC2经历了一个非常长的beta测试阶段。JSC是一个快速的、可视化的开发环境,用于开发基于JSF的Web应用,同时支持portlet的开发。JSC2是建立在NetBeans平台之上的,其特征包括带Ajax功能的JSF组件,方便的数据库访问,流线型的应用模式等。  

          可视化编程是RAD的核心。在JSC2中,几乎所有的编程工作,都被简化为JSF组件的拖放,从组件面板中拖放一个JSF组件到网页上,JSC2自动生成所有代码。页面导航设计也是可视化的,页面导航路径在一个导航图中直观显示,通过JSC2的页面导航器,导航路径可以在页面之间自由拖放。SQL查询设计也支持可视化,从数据库表中选择的查询字段,可以图形、表格或文本的方式呈现。JSC为CSS格式表单提供图形化接口,改变页面的外观非常容易,而页面上JSF组件的显示格式可以通过一个可视化的格式编辑器方便地调整。JSC2还有一个HTML页面导入功能,允许程序员从一个已有的HTML网页中导入外观格式。  

        JSC2是一个完整的集成开发环境,包含了Web应用开发所需要的所有系统和模块,涵盖从安装、开发到部署的全过程。JSC2的下载版本中,带有全套JSF组件,Sun   Application   Server应用服务器,一个带范例库的Java   数据库。JSC2可以访问所有主流的数据库,并与流行的版本控制软件有着良好的集成。JSC2是免费的,而且,在Sun   Developer   Network(SDN)注册一个免费的会员资格后,还可以从开发社区中获得大量的技术支持。  

        JSC2的数据访问功能值得称道。数据访问是几乎所有Web应用的基础,在JSC2中,通过简单的拖放就可以从关系数据库中获取数据,无需编写任何代码。表的设计、查询的设计也是可视化的。组件可以绑定到很多数据源,例如,web   service的method或EJB的method都可以被拖放的组件上。运行时,应用会自动建立和数据源的连接,查询、数据显示等都会按预期的方式工作。