Caucho Resin通过Java EE 6 Web Profile的官方认证

Caucho公司的Resin,从4.0.17版本开始,成为兼容EE 6 Web Profile实现的认证产品。该公司透露了他们取得认证的目的,实现细节可参照免费的PDF白皮书。

基本思想是,在复用已经通过认证的其他必需技术的模块的同时,为核心API开发自定义的实现。所以,Resin开发了自己的CDI实现(即CanDI),作为其服务器的核心部分。他们还有自己的定制Servlet 3.0和EJB 3.1精简版的实现。其他的组件(JSF2/Facelets、JPA和Bean Validation)则直接取自Oracle的GlassFish引用实现。

CanDI是服务器的完整组成部分,因为Resin自身就使用了它。Caucho在每个规范(JSR-299上下文和依赖注射)中都是个积极的参与者,他们以CanDI的形式提供自己的实现也就不足为奇了。这是JSR-299规范的第三份实现,前者分别有来自Apache的OpenWebBeans和红帽JBoss部门的Weld,Seam 3就是基于Weld构建的。

Caucho已经决定在CanDI和EJB精简版中添加一些Web Profile没有的功能:

Profile并没有禁止厂商根据自己的需要添加新的API和功能。稍后我们将谈到,我们已经决定在Web Profile之上添加少量的Java EE API和功能。尤其是,我们看到了增加支持计划、异步处理、消息、消息驱动Bean和基于Hessian的远程访问等功能的价值。

因此,除了标准的@ApplicationScoped、@SessionScoped、@RequestScoped和 @ConversationScoped之外,CanDI增加了@TransactionScoped和@ThreadScoped等额外扩展。它还明确支持Spring和Seam 3 Web应用程序。

在EJB 3.1精简版的实现中,除了Web Profile必须要求的功能之外,也增加了额外的功能。Resin支持EJB计划(@Schedule、@Timeout)、异步处理(@Asynchronous)、消息驱动Bean(@MessageDriven)和基于Hessian的远程访问(@Remote)。 Hessian是一个自定义的二进制通信协议(基于HTTP),专注于网络性能,也是由Caucho开发的。

Caucho将继续支持EE 6 Web Profile,他们也是第一个提供兼容标准的轻量级应用服务器的公司。Caucho认为这在以前的Java EE版本中是不可能的,因为轻量级服务器和完全兼容常常是水火不容的:

只能选择其一,要么创建轻量级Java应用服务器,要么去达到完全兼容标准。而Resin过去选择的是和Tomcat及Jetty一样的路线,即轻量级实现。

查看英文原文:Caucho Resin is Officially Certified Against the Java EE 6 Web Profile

你可能感兴趣的:(Caucho Resin通过Java EE 6 Web Profile的官方认证)