看了好多资料 但是没明白 之间到底是怎么个关系,主要是引用关系的问题,麻烦耐心看下帮解答下,如果能有补充更好
wsdl:types
xs:sequence
xs:sequence
/xs:complexType
xs:sequence
xs:sequence
/xs:complexType
/xs:schema
/wsdl:types
/wsdl:input
/wsdl:output
/wsdl:binding
/wsdl:port
/wsdl:service
/wsdl:definitions
targetNamespace干嘛用的
wsdl:definitions xs:schema targetNamespace可以不一样么
xs:element name="sayHello" type="tns:sayHello"/> name type 可以随便定义的么?为什么type要加个tns:不加可以么 加了有什么好处
的name是引用xs:element name="sayHello" 么
xs:sequencexs:sequence minOccurs是干什么的 如果是两个参数该怎么改?
/wsdl:message name="sayHello"是引用xs:element name="sayHello"这个name么
还是可以不一样,自己定义一个。wsdl:part element="tns:syaHello" name="parameters" 这个name干什么的 elements是引用xs:element name="sayHello" type="tns:sayHello"么,为什么不引用name
/wsdl:operation
这个是引用什么?
soapAction 这个是干嘛的 style呢 跟rpc值有啥区别
这个呢
你问的这些问题都是因为你从来没去好好看一下webservices的规范,它最大的特点就是基于xml来进行数据传输,xml的东西你去研究下对这个wsdl文件就很清楚了
wsdl就是用来描述webservices提供的服务,相当于对处暴露的接口,也就是外部可以访问的服务
先去学下XML,了解下xml 的Schema.
然后了解下WebService的基本流程,WSDL,SOAP的概念.
再了解下WSDL文档的格式要求.
上面的问题自然都有答案了.
(1)targetNameSpace是定义你的webservice实在那个命名空间中定义的,关于这个webservice的描述都在这个命名空间中。
(2)pass,说不清。不过个人感觉可以不一样,但是不一样的话没意义吧。
(3)name不可以随便定义,这个是你webservice提供的服务名,type是 中定义的类型,可以修改,tns:是targetNameSpace的缩写,不写我不知道webservice会去哪里找这个类型。
(4)不是,这个名字和 type属性名是一样的。
(5)不知道,如果是两个参数的话,增加一个element元素.
后面的我真搞不清了,这些都是webservice协议定义的东西,我也很想去看看究竟怎么回事,但是现在都被封装了,看不到。