Java EE 6遥遥无期 预览版两极分化

对Java开发者来说,最近可以说是一段有趣的时间。被Oracle收购后,Java的保管人Sun Microsystems的业务正在被Oracle一步步合并,而同时一个重要的Java新规范正接近完成。
自从2006年度JavaOne大会上Java EE规范获得批准以来,Java EE 6本应是企业Java的第一次规范更新。今年的JavaOne 2009已经曲终人散,但是我们仍没有看到Java EE 6敲定的消息——甚至连提到现在进展如何的消息都很少。

那么,Java EE 6现在到底到了哪一步呢?为什么没有在JavaOne会议上发布?Java EE 6离我们还有多远?

去年11月,通过发布用于Java EE服务器的GlassFish V3的Prelude版,51CTO.com也曾经报道过Sun曾经透露的一些Java EE 6的草案和新增特性。据我们了解,Sun原本计划在今年的JavaOne 2009上将Java EE 6的具体细节作为重头新闻发布,但结果却不是这样——仅仅是发行了Java EE 6的预览版,作为GlassFish更新发布会的一个小插曲。

“我们本来打算分成两个新闻发布:一个是宣布GlassFish Portfolio的更新,然后第二个新闻发布是Java EE 6的预览。但最后,我们还是决定做一个联合的新闻发布,”Sun公司Java EE/GlassFish总监Paul Hinz告诉我们。

他解释说,Java EE 6规范已经接近完成,大部分的规范处在拟议的最后草案阶段。据Hintz说,最终的Java EE 6计划在今年秋天发布。

但是目前我们还无法搞清楚Oracle的新角色会怎样影响Java的发展。到Hintz的那个时候,数据库巨人可能已经完成收购,也就是说到时Oracle已经开始直接领导Java。虽然Oracle首席执行官Larry Ellison 在JavaOne 2009期间表现得非常热情,并且特意宣布他的公司一定会继续热捧Java。

而且Oracle方面拒绝对我们提出的问题做出评论。

不论Oracle的参与会产生什么影响,Java EE的开发者们都必须不断推进和完善规范,因为最终用户和授权用户的要求必须要得到满足。

例如Hintz说,一旦Java EE 6规范在秋季定稿,Java EE的授权用户将需要使用TCK(Technology Compatibility Kit,技术兼容性套件),在应用平台上验证Java EE 6。

不过Hintz担保说,从现有的Java EE 5迁移到Java EE 6将不会有任何特别的挑战。

“Java EE 6是向后兼容Java EE5的,因此,在Java EE 5规范下开发的应用可以不做改变的运行在Java EE 6兼容的应用服务器上,”Hintz说。现在看来,Java EE 5的优点会被Java EE 6所保留,但向后兼容必然给Java EE带来更高的复杂度。

就Java EE 6的预览版来说,很多人还是看好新的Java EE 6规范,其可扩展性、Web框架的可插拔能力、持久化API(JPA)、JSF等新功能特性让人眼前一亮。开源Java的SOA供应商MuleSource公司创始人兼首席技术官Ross Mason就是这样认为,他觉得迁移到Java EE 6是顺理成章的事情。

“在很长一段时间里,JEE 6.0规范是我所见过最有创新性的事情,”Mason告诉我们。“在Java的简化方面似乎是真正的重点,这显然是受到了来自Java社区之外的其他开源公司的创新性想法的推动。我认为这会是一个伟大的事件,证明Java想要改变,它也可以有效地完成改变。”

但并不是Java社区中的每个人都对Java EE 6预览版感到满意。

SpringSource公司的首席执行官Rod Johnson告诉我们说,他对Java EE 6感到失望,在他看来,Java EE 6没有完成早先的承诺。

51CTO.com之前曾报道过SpringSurceo的新应用服务器不再支持Java EE,尽管对于WAR部署它提供了支持,但EAR部署和其它EE的规范,如EJB等,都不在支持范围之列。

Johnson特别提到,在Java EE 6的开始阶段,引入个人配置(profile)的想法给他留下了非常好的印象,因为这可以让开发者在Java EE中只运行他们需要的部分,使开发过程变得更有效率。

“最初,一些供应商真的希望Java EE能够在比如EJB(Enterprise Java Beans)和JTA(Java Transaction API)这些地方添加上个人配置,但最终发布的Java EE 6预览版,我想没有达到让Java EE更精简更灵活的承诺,”Johnson说,“因此坦率地说,我对最终的结果并不报太大的期望。”

你可能感兴趣的:(Java EE 6遥遥无期 预览版两极分化)