[阅读: 400] 2006-07-20 05:06:00
Java EE 5和SOA: 开发商的辩驳
2006.07.20 标签: Java SOA
BEA Workshop组的副总裁Bill Roth总结了那些支持Java企业版本的主流公司的立场,他诙谐地辩驳了Burton集团的报告,在报告中Burton集团声称Java企业版本这个平台由于复杂并且不适合SOA而被废弃。
“J2EE就像是企业软件中的马克·吐温,”他说,“报告中说它已经没有生命力了这确实是夸大其词了。”
Roth以及IBM、Oracle公司、Sun微系统公司以及现在是Red Hat公司的一个分部的JBoss公司的发言人,他们并不完全反对Burton集团高级分析师Richard Monson-Haefel的关于平台复杂性的观点,但是没有人同意他关于Java EE的应用已经走到尽头的这个结论。
“是的,复杂性是会带来一些问题,但这并不意味着就要废弃这个平台,” IBM Java EE架构师Jim Knudson说。
虽然他表示同意Java EE平台很复杂这一观点,但是他说某些复杂性是来自于用户的需求,并且我们要使用户达到他们期望的效果。他说IBM的那些预期实现SOA的用户都打算在Java EE 5平台上面构建SOA。
“我们所谈论的这些用户都在焦急地期待着5版本的发布,”IBM架构师说。
JBoss产品管理部主管Ram Venkataraman支持这样的观点:Java EE平台增加了复杂性是有必要的,因为需要使用它来处理各种服务,不仅仅是简单的调用关系数据库的Ajax风格Web服务,而且还有大容量事务处理的财务服务。
虽然他的确同意J2EE程序设计模型过于复杂,但是他反对Burton集团的观点——Java EE 5非但没有简化J2EE,反倒使其更加糟糕。
“作为JCP(负责平台规范的Java 社区进程)的成员,JBoss密切关注开源社区使用Hibernate和基于 POJO的程序设计所实现的功能,并且确实把这个思想用于Java EE程序设计模型之中,”Venkataraman说。“不需要除去J2EE平台的任何企业级特性, Java EE 5 平台就可以在很大程度上减少企业应用——所有从简单的到最复杂的应用——在开发中遇到的障碍。”
Sun公司负责企业Java平台的副总裁Karen Padir声称:在关于Java EE 5平台的争论中有两个混乱的问题。在她看来,平台公认的复杂性与程序设计模型这两个概念混淆,而且她说最新发布的版本中模型已经变得更加简单了。
“平台当然要复杂了,”Padir说。“因为它是应用服务器的规范。而且,应用服务器是很复杂的。”因此她说复杂性的存在主要是为了开发人员能够在应用服务器上工作,但是应用程序的开发人员并不一定会涉及到复杂性,因为他们仅仅使用那些完成工作所必需的工具就可以了。“开发人员可以忽略他们所不需要的复杂性”她说。
Oracle 应用服务器的产品管理部主管Mike Lehmann同意这一观点:应用程序开发与应用程序所运行的平台这两个概念混淆。“在Java EE平台上构建SOA完全不同于使用Java EE构建SOA”他说。
虽然Java EE可能是复杂的平台,他说,但是开发人员可以选择其他语言——比如PHP或者Perl——来开发SOA应用程序并且在Java EE平台上运行。
“复杂性为简化使用带来了商业机会,”BEA的Roth说。Java EE本身具有复杂性,但是开发人员希望能够以简单的方式开发Java EE平台上的应用程序,因此,BEA和其他公司就专注于提供工具使得这两方面联系起来。
根据Red Monk公司的分析师Michael Cote所说:在Java EE中可以使用非Java语言,这一点是它生存的关键。他完全没有打算签署Java EE平台的死亡证明书。
“当然,如果Java EE现在停滞不前而且永远不改变的话,那么它就会变得陈旧,”他说。在他看来,一旦那些可供选择的平台增加了更多的企业级开发功能,Java EE就可能会被更加简单、更加轻量级的平台所替代,比如Ruby on Rails。“然而,如果Java EE继续朝着简单化的目标前进,并且添加对多语言的支持——不仅仅是Java语言,比如JavaScript、PHP、Ruby、Python以及Perl——那么它就可以保持企业级应用和服务开发平台这一地位。”