RESTeasy 正式版首发

  • Mark Little
  • 胡键

2009 年 1 月 21 日

话题:SOAREST架构

我们曾在以前的新闻中提到基于 REST 的框架已经过剩以及符合 JSR311 的实现。对于该领域来说,由Bill Burke领导的RESTeasy可谓是跚跚来迟。现在,它的首个正式版已经发布了。发布声明中这样写道:

JBoss RESTEasy 是一个让你能够用 Java 编写 RESTFul Web 服务的框架。它是完全通过JAX-RS规范认证的一个可移植实现。

作为一个 JBOSS 的项目,它当然能和 JBOSS 应用服务器很好地集成在一起。但是,它也能在任何运行 JDK5 或以上版本的 Servlet 容器中运行。针对 RESTeasy,还存在一个客户端框架,它并不是 JAX-RS 标准的一部分。该版本中的其他特许包括:

  • 用于 Junit 测试的可嵌入式服务器实现。
  • 丰富的提供者集合,支持:XML、JSON、YAML、Fastinfoset 和 Atom 等。
  • JAXB 能够把对象列集成 XML、JSON、Fastinfoset 和 Atom,同时也能列集成 JAXB 对象针对数组、列表和集合的包装类。
  • 针对 JBoss Web、Tomcat 6 和 Servlet 3.0 的异步 HTTP(Comet)抽象。
  • 和 EJB、Spring 和 Spring MVC 集成
  • 利用 JAX-RS 注解的客户端框架,这样你就能轻易的编写出 HTTP 客户端(JAX-RS 只定义了服务器绑定)。

我们之前已经提过,对于各种 JAX-RS 实现存在一个比较,并且到目前为止 RESTeasy 表现都不错。在最近关于集成 JAX-RS 和 Spring MVC 的贴子中, Solomon Duskis写道:

RESTEasy 现在可以用来和 Spring MVC DispatcherServlet 进行集成。所需要做的全部就是 <import resource:"springmvc-resteasy.xml"></import>。这种方式有一些好处:
  • 将 JAX-RS 资源和 SprngMVC Controllers,或 Wicket 对象,或 Tapestry 或 Struts2 Action 分别进行管理。JAX-RS 可被设置成处理 XML 和 JSON 交互,而你钟意的 MVC 框架则处理 HTML 的创建。
  • JAX-RS 资源完全可以是返回 Spring ModelAndView 的 MVC 控制器。它可以是 JSP 视图,Freemarker、XSLT 或 Velocity 模板,或 RSS 视图。

而且,他总结道:

我使用 RESTEasy 是因为我能够感觉出该代码库(code base)比其他的 JAX-RS 实现要快。

只有时间才能告诉我们,RESTeasy 将在这个已经拥挤不堪的领域中如何茁壮成长。但是,第一印象表明,现在在构建基于 REST 的应用时,用户至少有了一个好的选择。

查看英文原文:First GA of RESTeasy Released

SOAREST架构