Java Web服务技术

Java Web服务技术,java,web-services,Java,Web Services,我从JavaWeb服务开始。我完全迷路了 如果我对建筑有很好的了解,有两种类型的建筑 soapweb服务 restfull web服务 但是在 有框架API来帮助构建web服务,这是正确的吗 JAX-WS 是这些API之一吗 我知道jax-ws的参考实现是 地铁 我想它与Java6和GlassFish3.1捆绑在一起 但是 axis2 它是api吗?jax-ws的实现 还有哪些其他API和实现? 如果我使用weblogic 10.3.5 现在,如果我把问题放在另一边 我必须使用w

我从JavaWeb服务开始。我完全迷路了

如果我对建筑有很好的了解,有两种类型的建筑

  • soapweb服务
  • restfull web服务
但是在

有框架API来帮助构建web服务,这是正确的吗

  • JAX-WS
是这些API之一吗

我知道jax-ws的参考实现是

  • 地铁
我想它与Java6和GlassFish3.1捆绑在一起

但是

  • axis2
它是api吗?jax-ws的实现

还有哪些其他API和实现? 如果我使用weblogic 10.3.5

现在,如果我把问题放在另一边

我必须使用web服务。我该知道些什么


我想我必须知道它是肥皂还是rest,但在《男孩》之后,这需要一本书来解释,但层次非常高:

JavaEE定义了一大堆API,它们基本上只是接口,没有实现JAX-WS是用于基于SOAP的Web服务的API,JAX-RS是用于基于REST的服务的API

实际使用的实现取决于您的javaee容器,有很多。Metro是与glassfish EE服务器捆绑的实现,jboss AS使用JBossWS。Axis是另一个支持JAX-WS的实现(可能还有JAX-RS,还没有检查)。还有CXF和许多其他

REST很容易理解,因为它非常轻量级,但是SOAP是行业标准,因为有很多标准化的特性(google WS-*),并且它有一个WSDL形式的描述符(只是还没有REST的WADL)。描述符(由JAX-WS自动生成)向客户机描述应该如何调用Web服务并跨技术工作。例如,在.NET中导入由java生成的WSDL是很简单的(不过,如果你能做到这一点,你应该使用GoogleWebServicesInteroperability,又名WS-I)

Java提供了一个名为wsimport的实用程序,它允许您从WSDL生成一个完全工作的Java客户机


但实际上,您的问题的基本性质表明,您没有阅读过任何与EE相关的内容,甚至不熟悉通用webservice技术,这有点令人惊讶,因为您显然使用的是weblogic服务器。你前面有很多书要读。

谢谢。我知道我有很多工作。。。java基本上很简单。但了解和理解所有底层技术并不总是那么容易。对于web服务(我在internet上读了很多东西),我发现要区分api和实现并不容易。在一些阅读资料中,他们并不是说metro是jax ws的jax ws ri,而是简单的jax ws!您不必知道使用什么实现,所有教程和所有工作都应该完全基于API。实施是无关紧要的。Java确实相当简单(尽管它有很多有趣的怪癖),但它所构建的生态系统(特别是对于工业)是巨大的,并且设计得非常好(一般来说)。按这个顺序,再问一个问题。JAX-WS2.0是JSR224。但是现在有一个维护版本4。所以JAX-WS2.2。另一方面,JSR224是JavaEE5和JavaSE6的一部分。那么,我如何知道绑定了哪个版本的jax-ws呢?JAX-WSRI也有同样的问题。最新版本是2.2.8。这取决于EE版本,EE7刚刚发布,而EE6在大多数AS中是相当标准的。即使这样,您也必须按照AS进行检查,看看它们捆绑了什么。通常没有什么能阻止您插入新的/替代版本,因此如果您真的想要metro实现,您可能可以让它在jboss上运行,而不会有太多麻烦。