【TechTarget中国原创】SOAP和WSDL是Web服务相关标准的补充,通常它们是一起使用。
SOAP是基于XML消息传递协议。SOAP规范描述其为传达XML消息的格式和结构的“信封”,并明确规定如何“约束”SOAP封套的各种通信协议,如HTTP 。SOAP协议还规定了处理邮件的SOAP信封的一些基本的规则。
WSDL是一种服务描述语言。它描述了接口的服务,即结构的XML消息,该服务可以接受/返回。WSDL还描述了如何将这些信息进行编码,并说明服务支持什么协议(例如,HTTP上的SOAP)。
如果您熟悉的CORBA ,SOAP就如同IIOP,WSDL就像IDL编译器。WSDL提供了一个服务的纲领性的描述。这种工具可以解析生成的WSDL和SOAP的中间件代码。
当在Java上建立Web服务,开发人员通常使用Web服务框架,该框架生成SOAP的代码。流行的Java开源Web服务框架包括Apache Axis2,Apache CXF,Sun的JAX -WS参照执行。所有的Java EE应用服务器还包括一个Web服务框架。具体用于加工生成代码框架:
-Apache Axis2提供Java2WSDL和WSDL2Java工具。
-Apache CXF提供了WSDL2Java工具和支持WSDL从使用说明的Java和Java2WSDL工具生成。(请注意,虽然Axis2和CXF工具具有相同的名称,工具不同,产生的代码不同。)
- Sun的JAX-WS支持WSDL从使用说明的Java、APT、wsgen工具和WSDL使用wsimport工具生成。
所有这三个框架,也可以在Java构建上使用配置文件来指定运行时设置和绘图的SOAP / XML的构建。