我正在尝试通过CXF和Maven签订合同。
我有一个位于src/java/resource/wsdl
内的WSDL和位于src/java/resources/xsd
内的5个xsds
我的层次结构看起来像这样:
aaa.v1r0.xsd (have an element which refers to bbb.v1r0.xsd)
bbb.v1r0.xsd (have elements which refers to ccc.v1r0.xsd, ddd.v1r0.xsd and eee.v1r0.xsd)
ccc.v1r0.xsd
ddd.v1r0.xsd (have an element which refers to eee.v1r0.xsd)
eee.v1r0.xsd
aaa.v1r0.wsdl have an element which refers to aaa.v1r0.xsd
aaa.v1r0.xsd
<?xml version="1.0" encoding="UTF-8"?>
<xsd:schema elementFormDefault="qualified"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
targetNamespace="http://schemas.example.com.br/aaa"
xmlns="http://schemas.example.com.br/aaa"
version="v1r0"
xmlns:bbb="http://schemas.example.com.br/bbb">
<xsd:import
namespace="http://schemas.example.com.br/bbb"
schemaLocation="bbb.v1r0.xsd"/>
<xsd:element name="aaa" type="Aaa"/>
<xsd:element name="aaas" type="Aaas"/>
<xsd:complexType name="Aaa">
<xsd:sequence>
<xsd:element name="field1" type="xsd:string" minOccurs="1" maxOccurs="1"/>
<xsd:element name="field2" type="xsd:string" minOccurs="1" maxOccurs="1"/>
<xsd:element ref="bbb:bbbs" minOccurs="1" maxOccurs="1"/>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="Aaas">
<xsd:sequence>
<xsd:element ref="aaa" minOccurs="0" maxOccurs="unbounded"/>
</xsd:sequence>
</xsd:complexType>
</xsd:schema>
bbb.v1r0.xsd
<?xml version="1.0" encoding="UTF-8"?>
<xsd:schema elementFormDefault="qualified"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
targetNamespace="http://schemas.example.com.br/bbb"
xmlns="http://schemas.example.com.br/bbb"
version="v1r0"
xmlns:ccc="http://schemas.example.com.br/ccc"
xmlns:ddd="http://schemas.example.com.br/ddd"
xmlns:eee="http://schemas.example.com.br/eee">
<xsd:import
namespace="http://schemas.example.com.br/ccc"
schemaLocation="ccc.v1r0.xsd"/>
<xsd:import
namespace="http://schemas.example.com.br/ddd"
schemaLocation="ddd.v1r0.xsd"/>
<xsd:import
namespace="http://schemas.example.com.br/eee"
schemaLocation="eee.v1r0.xsd"/>
<xsd:element name="bbb" type="Bbb"/>
<xsd:element name="bbbs" type="Bbbs"/>
<xsd:complexType name="Bbb">
<xsd:sequence>
<xsd:element name="field1" type="xsd:dateTime" minOccurs="1" maxOccurs="1"/>
<xsd:element name="field2" type="xsd:string" minOccurs="1" maxOccurs="1"/>
<xsd:element name="field3" type="xsd:base64Binary" minOccurs="0" maxOccurs="1"/>
<xsd:element ref="ccc:ccc" minOccurs="1" maxOccurs="1"/>
<xsd:element name="field4" type="xsd:integer" minOccurs="0" maxOccurs="1"/>
<xsd:element name="field5" type="xsd:string" minOccurs="0" maxOccurs="1"/>
<xsd:element ref="ddd:ddd" minOccurs="1" maxOccurs="1"/>
<xsd:element name="field6" minOccurs="0" maxOccurs="1">
<xsd:complexType>
<xsd:sequence>
<xsd:element ref="eee:eees" minOccurs="1" maxOccurs="1"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="Bbbs">
<xsd:sequence>
<xsd:element ref="bbb" minOccurs="0" maxOccurs="unbounded"/>
</xsd:sequence>
</xsd:complexType>
</xsd:schema>
ccc.v1r0.xsd
<?xml version="1.0" encoding="UTF-8"?>
<xsd:schema elementFormDefault="qualified"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
targetNamespace="http://schemas.example.com.br/ccc"
xmlns="http://schemas.example.com.br/ccc"
version="v1r0">
<xsd:element name="ccc" type="Ccc"/>
<xsd:complexType name="Ccc">
<xsd:sequence>
<xsd:element name="field1" type="xsd:string" minOccurs="1" maxOccurs="1"/>
<xsd:element name="field2" type="xsd:string" minOccurs="1" maxOccurs="1"/>
<xsd:element name="field3" minOccurs="0" maxOccurs="1">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="field1" type="xsd:double" minOccurs="1" maxOccurs="1"/>
<xsd:element name="field2" type="xsd:double" minOccurs="1" maxOccurs="1"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
</xsd:sequence>
</xsd:complexType>
</xsd:schema>
ddd.v1r0.xsd
<?xml version="1.0" encoding="UTF-8"?>
<xsd:schema elementFormDefault="qualified"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
targetNamespace="http://schemas.example.com.br/ddd"
xmlns="http://schemas.example.com.br/ddd"
version="v1r0"
xmlns:eee="http://schemas.example.com.br/eee">
<xsd:import
namespace="http://schemas.example.com.br/eee"
schemaLocation="eee.v1r0.xsd"/>
<xsd:element name="ddd" type="Ddd"/>
<xsd:element name="ddds" type="Ddds"/>
<xsd:complexType name="Ddd">
<xsd:sequence>
<xsd:element name="field1" type="xsd:string" minOccurs="1" maxOccurs="1"/>
<xsd:element name="field2" type="xsd:time" minOccurs="0" maxOccurs="1"/>
<xsd:element ref="eee:eees" minOccurs="0" maxOccurs="1"/>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="Ddds">
<xsd:sequence>
<xsd:element ref="ddd" minOccurs="1" maxOccurs="1"/>
</xsd:sequence>
</xsd:complexType>
</xsd:schema>
eee.v1r0.xsd
<?xml version="1.0" encoding="UTF-8"?>
<xsd:schema elementFormDefault="qualified"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
targetNamespace="http://schemas.example.com.br/eee"
xmlns="http://schemas.example.com.br/eee"
version="v1r0">
<xsd:element name="eee" type="Eee"/>
<xsd:element name="eees" type="Eees"/>
<xsd:complexType name="Eee">
<xsd:sequence>
<xsd:element name="field1" type="xsd:string" minOccurs="1" maxOccurs="1"/>
<xsd:element name="field2" type="xsd:string" minOccurs="0" maxOccurs="1"/>
<xsd:element name="field3" type="xsd:string" minOccurs="1" maxOccurs="1"/>
<xsd:element name="field4" type="xsd:integer" minOccurs="0" maxOccurs="1"/>
<xsd:element name="field5" minOccurs="0" maxOccurs="1">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="field1" type="xsd:string" minOccurs="1" maxOccurs="unbounded"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="Eees">
<xsd:sequence>
<xsd:element ref="eee" minOccurs="1" maxOccurs="unbounded"/>
</xsd:sequence>
</xsd:complexType>
</xsd:schema>
aaa.v1r0.wsdl
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<wsdl:definitions
name="evento.v1r0"
xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
targetNamespace="http://services.example.com.br/aaa"
xmlns:tns="http://services.example.com.br/aaa">
<wsdl:types>
<xsd:schema
elementFormDefault="qualified"
targetNamespace="http://services.example.com.br/aaa"
xmlns:aaa="http://schemas.example.com.br/aaa">
<xsd:import
namespace="http://schemas.example.com.br/aaa"
schemaLocation="../xsd/aaa.v1r0.xsd"/>
<xsd:element name="capacity01Request">
<xsd:complexType>
<xsd:sequence>
<xsd:element ref="aaa:aaa" minOccurs="1" maxOccurs="1"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element name="capacity01Response">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="field1" type="xsd:integer" minOccurs="1" maxOccurs="1"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element name="capacity02Request">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="field1" type="xsd:string" minOccurs="0" maxOccurs="1"/>
<xsd:element name="field2" type="xsd:date" minOccurs="0" maxOccurs="1"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element name="capacity02Response">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="field01" minOccurs="0" maxOccurs="1">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="field02" minOccurs="1" maxOccurs="unbounded">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="field03" type="xsd:string" minOccurs="1" maxOccurs="1"/>
<xsd:element name="field04" type="xsd:string" minOccurs="1" maxOccurs="1"/>
<xsd:element name="field05" minOccurs="1" maxOccurs="1">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="field06" minOccurs="1" maxOccurs="unbounded">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="field07" type="xsd:dateTime" minOccurs="1" maxOccurs="1"/>
<xsd:element name="field08" type="xsd:string" minOccurs="1" maxOccurs="1"/>
<xsd:element name="field09" type="xsd:base64Binary" minOccurs="0" maxOccurs="1"/>
<xsd:element name="field10" minOccurs="1" maxOccurs="1">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="field11" type="xsd:string" minOccurs="1" maxOccurs="1"/>
<xsd:element name="field12" type="xsd:string" minOccurs="1" maxOccurs="1"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element name="field13" type="xsd:integer" minOccurs="0" maxOccurs="1"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element name="capacity03Request">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="field01" type="xsd:string" minOccurs="0" maxOccurs="1"/>
<xsd:element name="field02" type="xsd:date" minOccurs="0" maxOccurs="1"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element name="capacity03Response">
<xsd:complexType>
<xsd:sequence>
<xsd:element ref="aaa:aaas" minOccurs="0" maxOccurs="1"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element name="capacity04Request">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="field01" type="xsd:string" minOccurs="1" maxOccurs="1"/>
<xsd:element name="field02" type="xsd:string" minOccurs="0" maxOccurs="1"/>
<xsd:element name="field03" minOccurs="0" maxOccurs="1">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="field04" type="xsd:date" minOccurs="0" maxOccurs="1"/>
<xsd:element name="field05" type="xsd:string" minOccurs="0" maxOccurs="1"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element name="capacity04Response">
<xsd:complexType>
<xsd:sequence>
<xsd:element ref="aaa:aaas" minOccurs="0" maxOccurs="1"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element name="AaaError">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="field01" type="xsd:string" minOccurs="1" maxOccurs="1"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
</xsd:schema>
</wsdl:types>
<wsdl:message name="requestcapacity01">
<wsdl:part name="capacity01Request" element="tns:capacity01Request"/>
</wsdl:message>
<wsdl:message name="responsecapacity01">
<wsdl:part name="capacity01Response" element="tns:capacity01Response"/>
</wsdl:message>
<wsdl:message name="requestcapacity02">
<wsdl:part name="capacity02Request" element="tns:capacity02Request"/>
</wsdl:message>
<wsdl:message name="responsecapacity02">
<wsdl:part name="capacity02Response" element="tns:capacity02Response"/>
</wsdl:message>
<wsdl:message name="requestcapacity03">
<wsdl:part name="capacity03Request" element="tns:capacity03Request"/>
</wsdl:message>
<wsdl:message name="responsecapacity03">
<wsdl:part name="capacity03Response" element="tns:capacity03Response"/>
</wsdl:message>
<wsdl:message name="requestcapacity04">
<wsdl:part name="capacity04Request" element="tns:capacity04Request"/>
</wsdl:message>
<wsdl:message name="responsecapacity04">
<wsdl:part name="capacity04Response" element="tns:capacity04Response"/>
</wsdl:message>
<wsdl:message name="AaaError">
<wsdl:part name="AaaError" element="tns:AaaError"/>
</wsdl:message>
<wsdl:portType name="eventoPortType">
<wsdl:operation name="capacity01">
<wsdl:input message="tns:requestcapacity01"/>
<wsdl:output message="tns:responsecapacity01"/>
<wsdl:fault name="error" message="tns:AaaError"/>
</wsdl:operation>
<wsdl:operation name="capacity02">
<wsdl:input message="tns:requestcapacity02"/>
<wsdl:output message="tns:responsecapacity02"/>
<wsdl:fault name="error" message="tns:AaaError"/>
</wsdl:operation>
<wsdl:operation name="capacity03">
<wsdl:input message="tns:requestcapacity03"/>
<wsdl:output message="tns:responsecapacity03"/>
<wsdl:fault name="error" message="tns:AaaError"/>
</wsdl:operation>
<wsdl:operation name="capacity04">
<wsdl:input message="tns:requestcapacity04"/>
<wsdl:output message="tns:responsecapacity04"/>
<wsdl:fault name="error" message="tns:AaaError"/>
</wsdl:operation>
</wsdl:portType>
<wsdl:binding name="eventoSOAP11Binding" type="tns:eventoPortType">
<soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
<wsdl:operation name="capacity01">
<soap:operation style="document" soapAction="" />
<wsdl:input>
<soap:body use="literal" />
</wsdl:input>
<wsdl:output>
<soap:body use="literal" />
</wsdl:output>
<wsdl:fault name="error">
<soap:fault name="error" use="literal" />
</wsdl:fault>
</wsdl:operation>
<wsdl:operation name="capacity02">
<soap:operation style="document" soapAction=""/>
<wsdl:input>
<soap:body use="literal" />
</wsdl:input>
<wsdl:output>
<soap:body use="literal" />
</wsdl:output>
<wsdl:fault name="error">
<soap:fault name="error" use="literal" />
</wsdl:fault>
</wsdl:operation>
<wsdl:operation name="capacity03">
<soap:operation style="document" soapAction=""/>
<wsdl:input>
<soap:body use="literal" />
</wsdl:input>
<wsdl:output>
<soap:body use="literal" />
</wsdl:output>
<wsdl:fault name="error">
<soap:fault name="error" use="literal" />
</wsdl:fault>
</wsdl:operation>
<wsdl:operation name="capacity04">
<soap:operation style="document" soapAction=""/>
<wsdl:input>
<soap:body use="literal" />
</wsdl:input>
<wsdl:output>
<soap:body use="literal" />
</wsdl:output>
<wsdl:fault name="error">
<soap:fault name="error" use="literal" />
</wsdl:fault>
</wsdl:operation>
</wsdl:binding>
<wsdl:service name="aaaService">
<wsdl:port name="AaaPort" binding="tns:eventoSOAP11Binding">
<soap:address location="http://localhost:8080/aaa-service/services/aaa"/>
</wsdl:port>
</wsdl:service>
</wsdl:definitions>
的pom.xml
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>br.com.exampleapp</groupId>
<artifactId>aaa-service</artifactId>
<packaging>war</packaging>
<version>0.0.1-SNAPSHOT</version>
<name>aaa-service Maven Webapp</name>
<url>http://maven.apache.org</url>
<properties>
<cxf.version>3.0.1</cxf.version>
<jdk.version>1.7</jdk.version>
<maven-compiler.version>3.1</maven-compiler.version>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
<spring.version>4.0.6.RELEASE</spring.version>
</properties>
<dependencies>
<dependency>
<groupId>org.apache.cxf</groupId>
<artifactId>cxf-rt-frontend-jaxws</artifactId>
<version>${cxf.version}</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-web</artifactId>
<version>${spring.version}</version>
</dependency>
</dependencies>
<build>
<finalName>aaa-service</finalName>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>${maven-compiler.version}</version>
<configuration>
<source>${jdk.version}</source>
<target>${jdk.version}</target>
<encoding></encoding>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.cxf</groupId>
<artifactId>cxf-codegen-plugin</artifactId>
<version>${cxf.version}</version>
<executions>
<execution>
<id>generate-sources</id>
<phase>generate-sources</phase>
<configuration>
<sourceRoot>${basedir}/src/main/java</sourceRoot>
<wsdlOptions>
<wsdlOption>
<wsdl>${basedir}/src/main/resources/wsdl/aaa.v1r0.wsdl</wsdl>
<extraargs>
<extraarg>-impl</extraarg>
</extraargs>
</wsdlOption>
</wsdlOptions>
</configuration>
<goals>
<goal>wsdl2java</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
</project>
的applicationContext.xml
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:jaxws="http://cxf.apache.org/jaxws"
xsi:schemaLocation="
http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans.xsd
http://cxf.apache.org/jaxws
http://cxf.apache.org/schemas/jaxws.xsd">
<jaxws:endpoint
id="aaa"
implementor="br.com.example.services.aaa.AaaPortImpl"
wsdlLocation="wsdl/aaa.v1r0.wsdl"
address="/aaa">
</jaxws:endpoint>
</beans>
的web.xml
<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.5" xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee /web-app_2_5.xsd">
<display-name>Sample web service provider</display-name>
<listener>
<listener-class>
org.springframework.web.context.ContextLoaderListener
</listener-class>
</listener>
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>WEB-INF/applicationContext.xml</param-value>
</context-param>
<servlet>
<servlet-name>CXFServlet</servlet-name>
<servlet-class>org.apache.cxf.transport.servlet.CXFServlet</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>CXFServlet</servlet-name>
<url-pattern>/services/*</url-pattern>
</servlet-mapping>
<session-config>
<session-timeout>60</session-timeout>
</session-config>
</web-app>
当我在Tomcat服务器中运行项目时,我可以通过http://localhost:8080/aaa-service/services/aaa?wsdl
但是,当我尝试通过SOAPUI测试此配置时,我收到一条消息,说这是加载WSDL的错误
来源null
找不到错误元素
bbbs@http://schemas.example.com.br/bbb
我做错了什么?是否有一些配置来引用元素?
答案 0 :(得分:1)
添加import语句以将其他xsd导入到wsdl
<xsd:import namespace="http://schemas.example.com.br/bbb" schemaLocation="../xsd/bbb.v1r0.xsd" />
<xsd:import namespace="http://schemas.example.com.br/ccc" schemaLocation="../xsd/ccc.v1r0.xsd" />
<xsd:import namespace="http://schemas.example.com.br/ddd" schemaLocation="../xsd/ddd.v1r0.xsd" />
<xsd:import namespace="http://schemas.example.com.br/eee" schemaLocation="../xsd/eee.v1r0.xsd" />
你的wsdl如下所示
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<wsdl:definitions name="evento.v1r0" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" targetNamespace="http://services.example.com.br/aaa" xmlns:tns="http://services.example.com.br/aaa">
<wsdl:types>
<xsd:schema elementFormDefault="qualified" targetNamespace="http://services.example.com.br/aaa" xmlns:aaa="http://schemas.example.com.br/aaa">
<xsd:import namespace="http://schemas.example.com.br/aaa" schemaLocation="../xsd/aaa.v1r0.xsd" />
<xsd:import namespace="http://schemas.example.com.br/bbb" schemaLocation="../xsd/bbb.v1r0.xsd" />
<xsd:import namespace="http://schemas.example.com.br/ccc" schemaLocation="../xsd/ccc.v1r0.xsd" />
<xsd:import namespace="http://schemas.example.com.br/ddd" schemaLocation="../xsd/ddd.v1r0.xsd" />
<xsd:import namespace="http://schemas.example.com.br/eee" schemaLocation="../xsd/eee.v1r0.xsd" />
<xsd:element name="capacity01Request">
<xsd:complexType>
<xsd:sequence>
<xsd:element ref="aaa:aaa" minOccurs="1" maxOccurs="1" />
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element name="capacity01Response">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="field1" type="xsd:integer" minOccurs="1" maxOccurs="1" />
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element name="capacity02Request">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="field1" type="xsd:string" minOccurs="0" maxOccurs="1" />
<xsd:element name="field2" type="xsd:date" minOccurs="0" maxOccurs="1" />
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element name="capacity02Response">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="field01" minOccurs="0" maxOccurs="1">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="field02" minOccurs="1" maxOccurs="unbounded">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="field03" type="xsd:string" minOccurs="1" maxOccurs="1" />
<xsd:element name="field04" type="xsd:string" minOccurs="1" maxOccurs="1" />
<xsd:element name="field05" minOccurs="1" maxOccurs="1">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="field06" minOccurs="1" maxOccurs="unbounded">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="field07" type="xsd:dateTime" minOccurs="1" maxOccurs="1" />
<xsd:element name="field08" type="xsd:string" minOccurs="1" maxOccurs="1" />
<xsd:element name="field09" type="xsd:base64Binary" minOccurs="0" maxOccurs="1" />
<xsd:element name="field10" minOccurs="1" maxOccurs="1">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="field11" type="xsd:string" minOccurs="1" maxOccurs="1" />
<xsd:element name="field12" type="xsd:string" minOccurs="1" maxOccurs="1" />
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element name="field13" type="xsd:integer" minOccurs="0" maxOccurs="1" />
</xsd:sequence>
</xsd:complexType>
</xsd:element>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element name="capacity03Request">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="field01" type="xsd:string" minOccurs="0" maxOccurs="1" />
<xsd:element name="field02" type="xsd:date" minOccurs="0" maxOccurs="1" />
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element name="capacity03Response">
<xsd:complexType>
<xsd:sequence>
<xsd:element ref="aaa:aaas" minOccurs="0" maxOccurs="1" />
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element name="capacity04Request">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="field01" type="xsd:string" minOccurs="1" maxOccurs="1" />
<xsd:element name="field02" type="xsd:string" minOccurs="0" maxOccurs="1" />
<xsd:element name="field03" minOccurs="0" maxOccurs="1">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="field04" type="xsd:date" minOccurs="0" maxOccurs="1" />
<xsd:element name="field05" type="xsd:string" minOccurs="0" maxOccurs="1" />
</xsd:sequence>
</xsd:complexType>
</xsd:element>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element name="capacity04Response">
<xsd:complexType>
<xsd:sequence>
<xsd:element ref="aaa:aaas" minOccurs="0" maxOccurs="1" />
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element name="AaaError">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="field01" type="xsd:string" minOccurs="1" maxOccurs="1" />
</xsd:sequence>
</xsd:complexType>
</xsd:element>
</xsd:schema>
</wsdl:types>
<wsdl:message name="requestcapacity01">
<wsdl:part name="capacity01Request" element="tns:capacity01Request" />
</wsdl:message>
<wsdl:message name="responsecapacity01">
<wsdl:part name="capacity01Response" element="tns:capacity01Response" />
</wsdl:message>
<wsdl:message name="requestcapacity02">
<wsdl:part name="capacity02Request" element="tns:capacity02Request" />
</wsdl:message>
<wsdl:message name="responsecapacity02">
<wsdl:part name="capacity02Response" element="tns:capacity02Response" />
</wsdl:message>
<wsdl:message name="requestcapacity03">
<wsdl:part name="capacity03Request" element="tns:capacity03Request" />
</wsdl:message>
<wsdl:message name="responsecapacity03">
<wsdl:part name="capacity03Response" element="tns:capacity03Response" />
</wsdl:message>
<wsdl:message name="requestcapacity04">
<wsdl:part name="capacity04Request" element="tns:capacity04Request" />
</wsdl:message>
<wsdl:message name="responsecapacity04">
<wsdl:part name="capacity04Response" element="tns:capacity04Response" />
</wsdl:message>
<wsdl:message name="AaaError">
<wsdl:part name="AaaError" element="tns:AaaError" />
</wsdl:message>
<wsdl:portType name="eventoPortType">
<wsdl:operation name="capacity01">
<wsdl:input message="tns:requestcapacity01" />
<wsdl:output message="tns:responsecapacity01" />
<wsdl:fault name="error" message="tns:AaaError" />
</wsdl:operation>
<wsdl:operation name="capacity02">
<wsdl:input message="tns:requestcapacity02" />
<wsdl:output message="tns:responsecapacity02" />
<wsdl:fault name="error" message="tns:AaaError" />
</wsdl:operation>
<wsdl:operation name="capacity03">
<wsdl:input message="tns:requestcapacity03" />
<wsdl:output message="tns:responsecapacity03" />
<wsdl:fault name="error" message="tns:AaaError" />
</wsdl:operation>
<wsdl:operation name="capacity04">
<wsdl:input message="tns:requestcapacity04" />
<wsdl:output message="tns:responsecapacity04" />
<wsdl:fault name="error" message="tns:AaaError" />
</wsdl:operation>
</wsdl:portType>
<wsdl:binding name="eventoSOAP11Binding" type="tns:eventoPortType">
<soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http" />
<wsdl:operation name="capacity01">
<soap:operation style="document" soapAction="" />
<wsdl:input>
<soap:body use="literal" />
</wsdl:input>
<wsdl:output>
<soap:body use="literal" />
</wsdl:output>
<wsdl:fault name="error">
<soap:fault name="error" use="literal" />
</wsdl:fault>
</wsdl:operation>
<wsdl:operation name="capacity02">
<soap:operation style="document" soapAction="" />
<wsdl:input>
<soap:body use="literal" />
</wsdl:input>
<wsdl:output>
<soap:body use="literal" />
</wsdl:output>
<wsdl:fault name="error">
<soap:fault name="error" use="literal" />
</wsdl:fault>
</wsdl:operation>
<wsdl:operation name="capacity03">
<soap:operation style="document" soapAction="" />
<wsdl:input>
<soap:body use="literal" />
</wsdl:input>
<wsdl:output>
<soap:body use="literal" />
</wsdl:output>
<wsdl:fault name="error">
<soap:fault name="error" use="literal" />
</wsdl:fault>
</wsdl:operation>
<wsdl:operation name="capacity04">
<soap:operation style="document" soapAction="" />
<wsdl:input>
<soap:body use="literal" />
</wsdl:input>
<wsdl:output>
<soap:body use="literal" />
</wsdl:output>
<wsdl:fault name="error">
<soap:fault name="error" use="literal" />
</wsdl:fault>
</wsdl:operation>
</wsdl:binding>
<wsdl:service name="aaaService">
<wsdl:port name="AaaPort" binding="tns:eventoSOAP11Binding">
<soap:address location="http://localhost:8080/aaa-service/services/aaa" />
</wsdl:port>
</wsdl:service>
</wsdl:definitions>