如何在 JAX-RS 和 JAX-WS Web 服务实现之间进行选择?

Posted

技术标签:

【中文标题】如何在 JAX-RS 和 JAX-WS Web 服务实现之间进行选择?【英文标题】:How to choose between JAX-RS and JAX-WS web services implementation? 【发布时间】:2011-10-29 20:07:09 【问题描述】:

在什么情况下使用一种比另一种更好?为什么?

谢谢!

【问题讨论】:

REST and SOAP 的可能重复项 【参考方案1】:

JAX-WS 是基于 SOAP 的 WS 的 API,将它用于 RESTful WebServices 并不是最好的处理方式。

因此,如果您希望实现 RESTful WebService,请使用 JAX-RS。

【讨论】:

看起来 JAX-RS 2 包含在 JAX-WS 中。见jax-rs-spec.java.net/nonav/2.0/apidocs/index.html。我怎么看这个?【参考方案2】:

我觉得 Web 服务大多与 UDDI 类型的应用程序相关联。 REST 只是一个简单的演变,通过使用 http 方法通信进行 CRUD 操作,将无状态的 http 协议变为有状态的事物。比如映射操作到方法GET, PUT, POSTDELETE

Web 服务用于飞机票预订系统、网上银行、支付网关等的编码。其中有一组标准系统在某些定义中公开了它们的 API。 JAX-RS 是为资源提供一些轻量级的层...

【讨论】:

不太明白你的话“普通人使用普通的 JAX-RS 无法实现这样的事情..” 我的意思是 JAX-RS 并不是要全面解决 Web 服务的用途。 你应该阅读这个blog.smartbear.com/apis/understanding-soap-and-rest-basics【参考方案3】:

Jax-WS 支持 SOAP 和 ReST,但是如果您需要 WS* 协议的特性,JAX-WS 是正确的 API。因此,与 ReST 相比,JAX-WS 使用起来有些复杂。

【讨论】:

以上是关于如何在 JAX-RS 和 JAX-WS Web 服务实现之间进行选择?的主要内容,如果未能解决你的问题,请参考以下文章

apache cxf的jax-rs和jax-ws的区别

JAX-RS & JAX-WS

MyEclipse JAX-WS Web Service

为 JAX-RPC Web 服务生成 JAX-WS 客户端存根?

webservice 开发规范

tomcat发布web service教程