1 . WSDL Web Service Definition Language - Web Service 定义语言;
2 . SOAP Simple Object Access Protocol - 简单对象协议;
3 . UDDI (用到的不多)
一 、 XML 里的两个属性:
targetNamespace - 相当于Java语言里的package
xmlns - 相当于Java语言的import(导入命名空间,要写的内容与要导入的文件的 targetNamespace 相同)
xmlns比Java的import功能要强:
* Java代码引入:import java.util.*;import java.sql.*;
程序代码里有Date属性时,会报错:对Date的引用不明确,java.sql中有类java.sql.Date和java.util中有类java.util.Date
* xmlns:ns1="http://ws.cxf.fjava.org/"
xmlns可以命名一个短名 ns1,短名可以改,"http://ws.cxf.fjava.org/"不能随便改,对应一个文件
二 、 WSDL解析
这里解析的是CXF-01至03里的程序,下面看图识流程(先看接口,后看实现);
调用一次Web Service的本质:
1.客户端把调用方法参数,转换XML文档片段——该文档片段必须符合WSDL定义的格式;
2.通过网络,把XML文档片段传给服务器;
3.服务器接收到XML文档片段;
4.服务器解析XML文档片段,提前其中的数据,并把数据转换为调用Web Service所需的参数值;
5.服务器执行方法
6.把执行方法得到的返回值再次转换生成XML文档片段(SOAP消息)——该文档片段必须符合WSDL定义的格式。
7.通过网络,把XML文档片段传给客户端;
8.客户端接收到XML文档片段;
9.客户端解析XML文档片段,提取其中的数据,并把数据转换 调用Web Service的返回结果。
从上面调用本质来看,要一个语言支持Web Service,唯一的要求是:该语言支持XML文档解析、生成、支持网络传输。
XML文档片段是一个跨平台的交换格式,这也是CXF能够跨平台的根本原因。
希望对你有帮助,祝你有一个好心情,加油!
若有错误、不全、可优化的点,欢迎纠正与补充;转载请注明出处!