目前,符合 Java EE 6 规范的应用服务器寥寥无几,参考实现 GlassFish 仍是唯一的完整实现。 Red Hat 的 JBoss 6 和 TmaxSoft 的 JEUS 7 现在都还处于测试阶段,预计今年会予以发布。
IBM 最近公布,他们已经开始执行 WebSphere 8 应用服务器的测试计划,该版本最终会支持 Java EE 6 规范。IBM 表示,尽管这一版本目前尚未完全支持 Java EE 6 规范,但已经实现了 Java™企业版 6.0 规范中的关键部分,具体有:
- EJB(Enterprise JavaBeans) 3.1
- JPA(Java Persistence API) 2.0
- JSF(JavaServer Faces) 2.0
- JSP(JavaServer Pages) 2.2
- Servlet 3.0
- JCA(Java EE 连接器体系结构) 1.6
- Java 的上下文和依赖注入(CDI)
至于其他主要的市场竞争者,Oracle 虽然自 2009 年公布路线图大纲后很少公开发表声明,不过预计 WebLogic 12g 和 Fusion Middleware 12g 会于明年发布。
Java EE 6 引入了 Profile 的概念,为了解决特定问题,Profile 可以定义完整 API 的子集。Profile 的部分意图就是为了降低潜在 Java EE 供应商进入市场的门槛,允许他们的实现只涵盖传统 Java EE 堆栈的部分内容。迄今为止,推行的 Profile 只有 Web Profile,它包含下列 API:
- 包括 JSF 2、Facelets、JSP 各个版本、Servlet 3 的 Web 层
- 借助 CDI、Managed Beans 和拦截器实现的依赖注入和上下文管理
- 通过 Bean Validation 实现的数据验证和约束
- EJB 3.1 精简版提供的业务逻辑层
- JTA 实现的事务管理
- JPA 2.2 实现的数据持久化
到目前为止,已经发布的 Web Profile 实现有三个:
Caucho 踏足该领域是很有意义的。作为 Servlet 容器,Resin 比 Tomcat 出现得还要早,其良好的性能和可伸缩性也被人称道,但 Caucho 一直不愿意进入 Java EE 市场。Web Profile 则可以让 Caucho 做到这一点,正如 Caucho 在博客里解释的一样:
有了 Java EE 6 Web Profile,我们终于有信心交付一个完全遵循标准的 Resin 版本了,该版本在功能和可用性上都已准备就绪。我们相信,Web Profile 能让我们创建一个非常轻量的 Java EE 应用服务器,和其他服务器端的 Java 开发选项相比,它“开箱即用”的开发体验或许更加引人注目。
Web Profile 的实现要能够自由扩展。Resin 就可以做到,它利用 Caucho 的 Hessian 技术(并非 RMI 或 SOAP)暴露了一个远程调用层,并在支持消息驱动 Bean 的同时提供了一个小而有效的 JMS 实现。此外,EJB 3.1 精简版的容器也支持异步方法、调度方法等内容。
查看英文原文: IBM WebSphere Application Server V8.0 Beta Announced
评论