非常感谢孙浩老师。
wrappered
推荐使用wrappered
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<wsdl:definitions xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
xmlns:tns="http://service.lichen.cn" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
xmlns:xsd="http://www.w3.org/2001/XMLSchema" name="UserService"
targetNamespace="http://service.lichen.cn">
<wsdl:types>
<xsd:schema targetNamespace="http://service.lichen.cn">
<!-- <xsd:include schemaLocation="user.xsd"></xsd:include> -->
<xsd:element name="add" type="tns:addType" />
<xsd:element name="addResponse" type="tns:addResponseType" />
<xsd:element name="delete" type="tns:deleteType" />
<xsd:element name="deleteResponse" type="tns:deleteResponseType" />
<xsd:element name="list" type="tns:listType" />
<xsd:element name="listResponse" type="tns:listResponseType" />
<xsd:element name="login" type="tns:loginType" />
<xsd:element name="loginResponse" type="tns:loginResponseType" />
<xsd:complexType name="addType">
<xsd:sequence>
<xsd:element name="user" type="tns:user" />
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="addResponseType">
<xsd:sequence />
</xsd:complexType>
<xsd:complexType name="deleteType">
<xsd:sequence>
<xsd:element name="username" type="xsd:string" />
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="deleteResponseType">
<xsd:sequence />
</xsd:complexType>
<xsd:complexType name="listType">
<xsd:sequence />
</xsd:complexType>
<xsd:complexType name="listResponseType">
<xsd:sequence minOccurs="1" maxOccurs="unbounded">
<xsd:element name="user" type="tns:user" />
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="loginType">
<xsd:sequence>
<xsd:element name="username" type="xsd:string" />
<xsd:element name="passwrod" type="xsd:string" />
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="loginResponseType">
<xsd:sequence>
<xsd:element name="user" type="tns:user" />
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="user">
<xsd:sequence>
<xsd:element name="username" type="xsd:string" />
<xsd:element name="nickname" type="xsd:string" />
<xsd:element name="passwrod" type="xsd:string" />
</xsd:sequence>
</xsd:complexType>
</xsd:schema>
</wsdl:types>
<wsdl:message name="add">
<wsdl:part element="tns:add" name="parameters" />
</wsdl:message>
<wsdl:message name="addResponse">
<wsdl:part element="tns:addResponse" name="parameters" />
</wsdl:message>
<wsdl:message name="delete">
<wsdl:part element="tns:delete" name="parameters" />
</wsdl:message>
<wsdl:message name="deleteResponse">
<wsdl:part element="tns:deleteResponse" name="parameters" />
</wsdl:message>
<wsdl:message name="login">
<wsdl:part element="tns:login" name="parameters" />
</wsdl:message>
<wsdl:message name="loginResponse">
<wsdl:part element="tns:loginResponse" name="parameters" />
</wsdl:message>
<wsdl:message name="list">
<wsdl:part element="tns:list" name="parameters" />
</wsdl:message>
<wsdl:message name="listResponse">
<wsdl:part element="tns:listResponse" name="parameters" />
</wsdl:message>
<wsdl:portType name="IMyService">
<wsdl:operation name="add">
<wsdl:input message="tns:add" />
<wsdl:output message="tns:addResponse" />
</wsdl:operation>
<wsdl:operation name="delete">
<wsdl:input message="tns:delete" />
<wsdl:output message="tns:deleteResponse" />
</wsdl:operation>
<wsdl:operation name="login">
<wsdl:input message="tns:login" />
<wsdl:output message="tns:loginResponse" />
</wsdl:operation>
<wsdl:operation name="list">
<wsdl:input message="tns:list" />
<wsdl:output message="tns:listResponse" />
</wsdl:operation>
</wsdl:portType>
<wsdl:binding name="userServiceSOAP" type="tns:IMyService">
<soap:binding style="document"
transport="http://schemas.xmlsoap.org/soap/http" />
<wsdl:operation name="add">
<wsdl:input>
<soap:body use="literal" />
</wsdl:input>
<wsdl:output>
<soap:body use="literal" />
</wsdl:output>
</wsdl:operation>
<wsdl:operation name="delete">
<wsdl:input>
<soap:body use="literal" />
</wsdl:input>
<wsdl:output>
<soap:body use="literal" />
</wsdl:output>
</wsdl:operation>
<wsdl:operation name="login">
<wsdl:input>
<soap:body use="literal" />
</wsdl:input>
<wsdl:output>
<soap:body use="literal" />
</wsdl:output>
</wsdl:operation>
<wsdl:operation name="list">
<wsdl:input>
<soap:body use="literal" />
</wsdl:input>
<wsdl:output>
<soap:body use="literal" />
</wsdl:output>
</wsdl:operation>
</wsdl:binding>
<wsdl:service name="UserService">
<wsdl:port binding="tns:userServiceSOAP" name="UserServicePort">
<soap:address location="http://localhost:8800/us/" />
</wsdl:port>
</wsdl:service>
</wsdl:definitions>
bare
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<wsdl:definitions
xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
xmlns:tns="http://service.zttc.edu.cn"
xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
name="UserService"
targetNamespace="http://service.zttc.edu.cn">
<!--
bare不进行封装的类型
-->
<wsdl:types>
<xsd:schema targetNamespace="http://service.zttc.edu.cn">
<!-- <xsd:import namespace="http://service.zttc.edu.cn" schemaLocation="user.xsd"></xsd:import> -->
<!-- <xsd:include schemaLocation="user.xsd"></xsd:include> -->
<xsd:element name="user" type="tns:user"></xsd:element>
<xsd:element name="username" type="xsd:string"></xsd:element>
<xsd:element name="loginResponse">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="user" type="tns:user"></xsd:element>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element name="login">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="username" type="xsd:string"></xsd:element>
<xsd:element name="password" type="xsd:string"></xsd:element>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element name="listResponse">
<xsd:complexType>
<xsd:sequence minOccurs="1" maxOccurs="unbounded">
<xsd:element name="user" type="tns:user"></xsd:element>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:complexType name="user">
<xsd:sequence>
<xsd:element name="username" type="xsd:string"/>
<xsd:element name="password" type="xsd:string"/>
<xsd:element name="nickname" type="xsd:string"/>
</xsd:sequence>
</xsd:complexType>
</xsd:schema>
</wsdl:types>
<wsdl:message name="add">
<wsdl:part element="tns:user" name="user"/>
</wsdl:message>
<wsdl:message name="addResponse"/>
<wsdl:message name="delete">
<wsdl:part element="tns:username" name="username"/>
</wsdl:message>
<wsdl:message name="deleteResponse"/>
<wsdl:message name="list"/>
<wsdl:message name="listResponse">
<wsdl:part element="tns:listResponse" name="parameters"/>
</wsdl:message>
<wsdl:message name="login">
<wsdl:part element="tns:login" name="parameters"/>
</wsdl:message>
<wsdl:message name="loginResponse">
<wsdl:part element="tns:loginResponse" name="parameters"/>
</wsdl:message>
<wsdl:portType name="IUserService">
<wsdl:operation name="add">
<wsdl:input message="tns:add"/>
<wsdl:output message="tns:addResponse"/>
</wsdl:operation>
<wsdl:operation name="delete">
<wsdl:input message="tns:delete"/>
<wsdl:output message="tns:deleteResponse"/>
</wsdl:operation>
<wsdl:operation name="list">
<wsdl:input message="tns:list"/>
<wsdl:output message="tns:listResponse"/>
</wsdl:operation>
<wsdl:operation name="login">
<wsdl:input message="tns:login"/>
<wsdl:output message="tns:loginResponse"/>
</wsdl:operation>
</wsdl:portType>
<wsdl:binding name="userServiceSOAP" type="tns:IUserService">
<soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
<wsdl:operation name="add">
<wsdl:input>
<soap:body use="literal"/>
</wsdl:input>
<wsdl:output>
<soap:body use="literal"/>
</wsdl:output>
</wsdl:operation>
<wsdl:operation name="delete">
<wsdl:input>
<soap:body use="literal"/>
</wsdl:input>
<wsdl:output>
<soap:body use="literal"/>
</wsdl:output>
</wsdl:operation>
<wsdl:operation name="list">
<wsdl:input>
<soap:body use="literal"/>
</wsdl:input>
<wsdl:output>
<soap:body use="literal"/>
</wsdl:output>
</wsdl:operation>
<wsdl:operation name="login">
<wsdl:input>
<soap:body use="literal"/>
</wsdl:input>
<wsdl:output>
<soap:body use="literal"/>
</wsdl:output>
</wsdl:operation>
</wsdl:binding>
<wsdl:service name="UserService">
<wsdl:port binding="tns:userServiceSOAP" name="UserServicePort">
<soap:address location="http://localhost:9898/us/"/>
</wsdl:port>
</wsdl:service>
</wsdl:definitions>
rpc
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<wsdl:definitions
xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
xmlns:tns="http://service.zttc.edu.cn"
xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
name="UserService"
targetNamespace="http://service.zttc.edu.cn">
<!-- RPC的方式 -->
<wsdl:types>
<xsd:schema targetNamespace="http://service.zttc.edu.cn">
<!-- <xsd:import namespace="http://service.zttc.edu.cn" schemaLocation="user.xsd"></xsd:import> -->
<!-- <xsd:include schemaLocation="user.xsd"></xsd:include> -->
<xsd:complexType name="user">
<xsd:sequence>
<xsd:element name="username" type="xsd:string"/>
<xsd:element name="password" type="xsd:string"/>
<xsd:element name="nickname" type="xsd:string"/>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="listUser">
<xsd:sequence maxOccurs="unbounded" minOccurs="1">
<xsd:element name="user" type="tns:user"></xsd:element>
</xsd:sequence>
</xsd:complexType>
</xsd:schema>
</wsdl:types>
<wsdl:message name="add">
<wsdl:part name="user" type="tns:user"/>
</wsdl:message>
<wsdl:message name="addResponse"/>
<wsdl:message name="delete">
<wsdl:part type="xsd:string" name="username"/>
</wsdl:message>
<wsdl:message name="deleteResponse"/>
<wsdl:message name="list">
</wsdl:message>
<wsdl:message name="listResponse">
<wsdl:part name="user" type="tns:listUser">
</wsdl:part>
</wsdl:message>
<wsdl:message name="login">
<wsdl:part type="xsd:string" name="username"/>
<wsdl:part type="xsd:string" name="password"/>
</wsdl:message>
<wsdl:message name="loginResponse">
<wsdl:part name="user" type="tns:user"/>
</wsdl:message>
<wsdl:portType name="IUserService">
<wsdl:operation name="add">
<wsdl:input message="tns:add"/>
<wsdl:output message="tns:addResponse"/>
</wsdl:operation>
<wsdl:operation name="delete">
<wsdl:input message="tns:delete"/>
<wsdl:output message="tns:deleteResponse"/>
</wsdl:operation>
<wsdl:operation name="list">
<wsdl:input message="tns:list"/>
<wsdl:output message="tns:listResponse"/>
</wsdl:operation>
<wsdl:operation name="login" parameterOrder="username password">
<wsdl:input message="tns:login"/>
<wsdl:output message="tns:loginResponse"/>
</wsdl:operation>
</wsdl:portType>
<wsdl:binding name="userServiceSOAP" type="tns:IUserService">
<soap:binding style="rpc" transport="http://schemas.xmlsoap.org/soap/http"/>
<wsdl:operation name="add">
<wsdl:input>
<soap:body use="literal" namespace="http://service.zttc.edu.cn"/>
</wsdl:input>
<wsdl:output>
<soap:body use="literal" namespace="http://service.zttc.edu.cn"/>
</wsdl:output>
</wsdl:operation>
<wsdl:operation name="delete">
<wsdl:input>
<soap:body use="literal" namespace="http://service.zttc.edu.cn"/>
</wsdl:input>
<wsdl:output>
<soap:body use="literal" namespace="http://service.zttc.edu.cn"/>
</wsdl:output>
</wsdl:operation>
<wsdl:operation name="list">
<wsdl:input>
<soap:body use="literal" namespace="http://service.zttc.edu.cn"/>
</wsdl:input>
<wsdl:output>
<soap:body use="literal" namespace="http://service.zttc.edu.cn"/>
</wsdl:output>
</wsdl:operation>
<wsdl:operation name="login">
<wsdl:input>
<soap:body use="literal" namespace="http://service.zttc.edu.cn"/>
</wsdl:input>
<wsdl:output>
<soap:body use="literal" namespace="http://service.zttc.edu.cn"/>
</wsdl:output>
</wsdl:operation>
</wsdl:binding>
<wsdl:service name="UserService">
<wsdl:port binding="tns:userServiceSOAP" name="UserServicePort">
<soap:address location="http://localhost:9898/us/"/>
</wsdl:port>
</wsdl:service>
</wsdl:definitions>