我刚刚听说了Apache Wink ,我想知道与Jersey或JBoss RESTEasy相比有什么不同。 其他两个不能做什么呢?
我们一直在使用泽西来进行一些内部项目,主要是因为它很简单,但我无法弄清楚是什么让这两个更好,我会考虑切换。 有没有人有任何利用这些填充的利基?
https://jersey.github.io/license.html
我知道OP要求REST,但是如果这是用于内部通信的话,那么如果你的要求与这些系统匹配的话,可以认真考虑使用消息队列或其他异步RPC(Finagle)而不是传统的REST。
如果它必须是传统的HTTP REST(外部),我会选择RestEasy或Jersey,因为大部分的头脑分享都放在这两个项目中。
另请参阅: Rest客户端的Java?
在选择使用的实现时,请记住这一点:如果您尝试将Jersey Web服务部署到JBOSS 7.1,则不起作用。 这个错误将会发生:
Only one JAX-RS Application Class allowed
这是因为REST Easy与JBOSS捆绑在一起作为默认的JAX-RS实现。 因此,JBOSS会决定这是您要使用的实现,不会加载另一个JAX-RS实现(如Jersey)。 为了解决这个问题,你需要添加下面几行到你的web.xml文件中:
<context-param> <param-name>resteasy.scan</param-name> <param-value>false</param-value> </context-param> <context-param> <param-name>resteasy.scan.providers</param-name> <param-value>false</param-value> </context-param> <context-param> <param-name>resteasy.scan.resources</param-name> <param-value>false</param-value> </context-param>
链接: https : //community.jboss.org/message/744530
我最喜欢的Jersey扩展之一是Viewables。 可视化允许您将数据轻松绑定到JSP页面,以实现真正的模型 – 视图 – 控制器(MVC)体系结构:
如果你打算使用JBoss 7.x,你必须使用RestEasy,因为它被集成在JBoss中。 要使用JBoss 7.x的Jersey,你必须禁用RestEasy,这很复杂!