xml 里面的两个属性
targetNamespace --相当于java语言的package
xmlns --相当于于java的import
一个webservice的调用--其实并不是方法调用,而是发送soap消息(即xml片段)
调用一次webservice的本质:
1.客户端把调用方法参数,转换成xml片段(soap 消息,input消息)--该文档片段必须符合wsdl定义的格式。
2.通过网络,把xml文档片段传给服务器
3.服务器接收到xml片段
4.服务器解析xml文档片段,提取其中的数据,并把这些数据转换成webservice所需要的参数值
5.服务器执行方法
6.把执行方法得到的返回值,再次转换生成xml片段(soap消息,output消息)
7.通过网络,把xml文档片段传给客户端
8.客户器接收到xml片段
9.客户器解析xml文档片段,提取其中的数据,并把这些数据转换成webservice返回值。
要一个语言支持webservice,唯一的要求,该语言支持xml生成,解析,网络。
wdsl 包含内容:
1.webservice 包含了什么操作
2.该webservice操作应该怎样操作
3.该webserivce的服务地址
发送xml消息片段
<getAllUserResponse> <return> <entries> 可能出现0~N次 <key></key> <value> <id></id> <name></name> <pwd></pwd> </value> </entries> </return> </getAllUserResponse>
wsdl包括内容:
---------------------------------------------------------------------------
webservice接口
1.types 元素
该元素内容就是schema文档
2.2n(n代表方法)个message元素
3.portType元素
包含n个operation元素,每个operation定义ws的一个操作
webservice实现
1.binding元素:包含n个更详细的operation元素
2.service元素:port子元素(webservice的绑定地址)
---------------------------------------------------------------------------