2012-08-13 154 views

回答

6

Web服务栈的选择取决于您实际需要的标准。下面是一些栈目前可用:

  • The JAX-WS reference implementation就是Java的一部分,提供基本的支持,包括WS-Addressing的,而不是WS-ReliableMessaging的或WS-Security的。最大的好处是你不需要使用RI来获得额外的依赖关系。
  • Another option is Axis2,它也为这些标准提供支持。据我所知,Axis2的使用正在下降,个人而言,我发现它很难使用(这基本上是一种观点,我不想开始一场火焰战争)。
  • 我建议考虑a third option: CXF。它是Web服务堆栈的另一个实现,并且与Axis2大致相同。我发现设置和使用相当容易,并且个人更喜欢Axis2。
  • One more option is Metro。 Metro捆绑了JAX-WS参考实现和Web服务互操作性技术(WSIT)。 WSIT为更多的标准提供了一个实现,并被调整为提供与WCF的互操作性。

Here is an article比较这些堆栈和一些更多的细节。我的建议是:如果你只需要基本的东西(没有可靠的消息,安全等)使用参考实现。如果您需要支持其他标准,请转至CXF或Metro。

1

地铁是要走的路!至少对我:)

请参阅我的comment在类似的问题。

0

这取决于您的要求。你需要什么类型的实现。来自1.6版本的Java提供了用于JAX-WS类型的web服务创建的API。但是,真的只是基本的要求。如果你想要ws-Security,ws-policy等,那么请去Axis2。实际上,在Axis2中,他们已经从Axis 1.x版本中进行了很多改进。新的STAX实现就是其中之一。除此之外,Axis2使服务创建部分变得更加容易。即使他们也支持RESTful Web服务。