新的一年开始,按理说要对去年的什么东西做一番总结了,当然总结很多了,这次先总结一下 JSF 了,毕竟这对我来说是今年最主要的技术方向,对它也算是比较熟悉了,虽然没有非常深入的去研究它,但从一年多的使用和理解来说,还是有不少自己的心得的,在新的一年到来之际,把这些东西记录下来,重新记起这个让我欢喜让我忧的 JSF。静观这一年 JSF 的发展,没有太多的兴奋,也没有太多的欢喜,更多的是平静,与同一时间大红大紫的 Ajax 和 RoR 相比,JSF 带给我们的更多是平静,静的让人心里发慌,上半年可以说还是稍有一些波涛了,而随着月份的数字越来越大,波涛是越来越小了。
可以说各大厂商在互相妥协让步的基础之上,把 JSF 实用化的实现版本的重任交到了 Apache Myfaces 项目上,而 Oracle 也将其 ADF Faces 的实现捐给了 Apache,而现在我们可以见到的 JSF 实现也主要就是 Myfaces 了,当然 Sun 自己也有一套实现,当然这只是一种不够健壮,并且功能有限的实现版本,一般不会拿来做正式的项目的。刚过完年 Myfaces 1.1.2 和 Tomahawk 1.1.2 正式发布,这是过去 Myfaces 1.1.1 的一个 bug 修复版本,离上一个版本已经有半年左右的时间了,而项目组的同事们也在与 Myfaces 1.1.1 的 bug 斗争了半年才用到这个新的版本。随后的 Myfaces Core 1.1.3 / 1.1.4 则在几乎一个月内发布,而 1.1.5 和 Tomahawk 1.1.4 则至今没有动静,虽然由 Myfaces 每次发布带给我们的 new feature 已经不是那么的多了,但是还是期盼新的版本能够给我们带来新的惊喜。
五月份的时候 JavaEE 5 最终标准发布了,JSF 1.2 终于被正式提上了日程,这是一个对过去标准的一个修复版本,修正了上一个标准中的诸多问题,比如 JSTL 兼容性问题,还有一些细节性的改动,都是过去在 JSF 1.1 标准中非常折磨人的问题,但新的 1.2 标准依赖于 JDK 1.5,依赖于一系列新的 JavaEE 5 的 API,比如 Servlet 2.5, JSTL 1.2 而这些新的 API 也是在紧锣密鼓的开发中,所以 Myfaces 1.2 的开发进程也一直很慢,因为其中出现的问题不光是 Myfaces 自己的问题,或许还有 Tomcat 6 的问题,或是其他的问题。而另一方面 Sun 也发布了一个 JSF 1.2 的实现版本,是由 JSF 1.2 的标准的主笔领导开发的,按照我对于 Sun JSF 上个版本的表现,我对于这个新的实现也不抱有太多的希望,或许它更多的只是一种象征了,象征着 JSF 1.2 的正式推出。
开源领域的 JSF 相关的项目发展缓慢。Myfaces 在一年内没有给我们带来太多的惊喜。曾经做为黑马出现的 JSF 扩展框架 Shale 至今还没有给大家带来一个满意的答复,一直以 develop 版本发布出来给大家尝鲜用,虽然慢慢的在前进,但是却很难带给大家什么惊喜,或许会被人逐渐的淡忘。而去年年底由 Oracle 捐给 Apache 的 ADF Faces 也是至今没有太大的动静,同样作为兄弟项目的 Struts 2 从提出到现在也有一年了,还没有能提供一个正式的版本给我们用,作为 Apache 的项目,这样的发布速度,确实很让人不能满意,而作为另一个大型的开源组织 Eclipse,则在一个个 Milestone 下有条不紊的向前推进,不断蚕食着别人所占据的地盘。
作为 JSF 整体应用平台一个重要的部分,第三方组件库的发展有不小的突破,但是真正的应用度似乎不是很高,这一年内出现了很多优秀的商业,开源的组件库,除去上面我们提到的 Myfaces Tomahawk, Oracle ADF 之外,还出现了 ICEFaces, BackBase,WebGalileo Faces,另外在 .Net 领域的组件提供商 Infragistics 也通过收购发布了 NetAdvantage for JSF 2006 这样的组件库。另外一直在 JSF IDE 上有所作为的 Exadel 公司也在 JSF 组件上插上一手,一方面发布了其开源的 JSF 框架 Ajax4JSF 另一方面在其基础上提供了一个商业的 JSF 组件库 VCP,这样的方式确实有一套,可以同时抓住两方面的市场。另一方面国内也出现了像金碟这样基于自己 Apusic Application Server 的开源 JSF 组件库,是一件值得我们国人骄傲的事情,不过由于其只能够运行于 Apusic 上,使其应用面受到了不小的限制。
让我们再来看看这一年 JSF 相关 IDE 在今年的作为了,在 06 年春节期间,一些支持 JSF 的 IDE 像赶集一样不断的推出来,先后有 MyEclipse 4.1 GA,Sun Java Studio Creator 2, Oracle JDeveloper, BEA Workshop Studio 3.0,在这一段时间推出。MyEclipse 和 BEA Workshop 是 Eclipse 的插件,而 JDeveloper 和 Creator 是基于 Swing 的,不过随着时间的推移,大家真正在用的 JSF 开发工具也主要就是 MyEclipse 和 Workshop,不过 MyEclipse 在 JSF 上想和 Workshop 拼,还需要一些时日了,另外在九月份正式发布的 IntelliJ IDEA 6.0 也开始支持 JSF 了,当然是用其独特的方式去支持,虽然不提供图形化的所见即所得的开发方式,但由于其 IDE 内部各个部分间完美的组合,使得其在写代码的感觉上要远远超过的其他竞争者,这也正是独立 IDE 和插件 IDE 一个重要的功能区别。
纵观 06 年的 JSF 的发展历程,我还是对 07 年的 JSF 的发展很期待,希望 Myfaces 基于 JSF 1.2 的实现能够尽快的推出,也能够有更多更好的开源组件库的出现。
posted on 2007-01-05 09:22
steady 阅读(2213)
评论(6) 编辑 收藏