Good Day,
I am having trouble with the first of many WSDL files I am authoring to
implement a
web-services-as-process-integration project. XMLSpy validates it as a valid
WSDL
file. After the error text, I will include the WSDL in this order:
PermutationSvc.wsdl: This file is the master file I am trying to generate
SerpentFault.wsdl: This file defines a message: SerpentFault, which will be
common to many operations
XSD/Payloads.xsd: Defines some element types
XSD/Permutation.xsd: Defines the control record type for the
mutate operation.
When I try to generate (using a batch file in my path) the Permutation
Service interface, I get the
error stream you see below. Can anyone provide guidance?
Cordialy,
Mark D Henning
Princiapal Sofware Engineer
ITT Corp, AES Division
736-463-0057
C:\Projects\WSDLTEST>wsdl2java -p com.itt.serpent.wsdl -uri
./PermutationSvc.ws
dl
C:\Projects\WSDLTEST>set AXIS2_HOME=c:\projects\SOA\axis2-1.4
C:\Projects\WSDLTEST>c:\projects\SOA\axis2-1.4\bin\wsdl2java -p
com.itt.serpent
.wsdl -uri ./PermutationSvc.wsdl
Using AXIS2_HOME: c:\projects\SOA\axis2-1.4
Using JAVA_HOME: C:\Sun\SDK\jdk
Retrieving document at './PermutationSvc.wsdl'.
Retrieving document at './SerpentFault.wsdl', relative to
'file:/C:/Projects/WSD
LTEST/./PermutationSvc.wsdl'.
Retrieving schema at 'XSD/Payloads.xsd', relative to
'file:/C:/Projects/WSDLTEST
/./PermutationSvc.wsdl'.
Retrieving schema at 'XSD/Permutation.xsd', relative to
'file:/C:/Projects/WSDLT
EST/./PermutationSvc.wsdl'.
Retrieving document at './PermutationSvc.wsdl'.
Retrieving document at './SerpentFault.wsdl', relative to
'file:/C:/Projects/WSD
LTEST/./PermutationSvc.wsdl'.
Retrieving schema at 'XSD/Payloads.xsd', relative to
'file:/C:/Projects/WSDLTEST
/./PermutationSvc.wsdl'.
Retrieving schema at 'XSD/Permutation.xsd', relative to
'file:/C:/Projects/WSDLT
EST/./PermutationSvc.wsdl'.
[ERROR] Cannot Determine the MEP
org.apache.axis2.AxisFault: Cannot Determine the MEP
at
org.apache.axis2.description.WSDL11ToAxisServiceBuilder.getMEP(WSDL11
ToAxisServiceBuilder.java:2740)
at
org.apache.axis2.description.WSDL11ToAxisServiceBuilder.populateOpera
tions(WSDL11ToAxisServiceBuilder.java:1281)
at
org.apache.axis2.description.WSDL11ToAxisServiceBuilder.populatePortT
ype(WSDL11ToAxisServiceBuilder.java:590)
at
org.apache.axis2.description.WSDL11ToAxisServiceBuilder.populateEndpo
ints(WSDL11ToAxisServiceBuilder.java:469)
at
org.apache.axis2.description.WSDL11ToAxisServiceBuilder.populateServi
ce(WSDL11ToAxisServiceBuilder.java:363)
at
org.apache.axis2.description.WSDL11ToAllAxisServicesBuilder.populateA
llServices(WSDL11ToAllAxisServicesBuilder.java:107)
at
org.apache.axis2.wsdl.codegen.CodeGenerationEngine.<init>(CodeGenerat
ionEngine.java:147)
at org.apache.axis2.wsdl.WSDL2Code.main(WSDL2Code.java:35)
at org.apache.axis2.wsdl.WSDL2Java.main(WSDL2Java.java:24)
Exception in thread "main"
org.apache.axis2.wsdl.codegen.CodeGenerationException
: Error parsing WSDL
at
org.apache.axis2.wsdl.codegen.CodeGenerationEngine.<init>(CodeGenerat
ionEngine.java:153)
at org.apache.axis2.wsdl.WSDL2Code.main(WSDL2Code.java:35)
at org.apache.axis2.wsdl.WSDL2Java .main(WSDL2Java.java:24)
Caused by: org.apache.axis2.AxisFault: Cannot Determine the MEP
at
org.apache.axis2.description.WSDL11ToAxisServiceBuilder.getMEP(WSDL11
ToAxisServiceBuilder.java:2740)
at
org.apache.axis2.description.WSDL11ToAxisServiceBuilder.populateOpera
tions(WSDL11ToAxisServiceBuilder.java:1281)
at
org.apache.axis2.description.WSDL11ToAxisServiceBuilder.populatePortT
ype(WSDL11ToAxisServiceBuilder.java:590)
at
org.apache.axis2.description.WSDL11ToAxisServiceBuilder.populateEndpo
ints(WSDL11ToAxisServiceBuilder.java:469)
at
org.apache.axis2.description.WSDL11ToAxisServiceBuilder.populateServi
ce(WSDL11ToAxisServiceBuilder.java:363)
at
org.apache.axis2.description.WSDL11ToAllAxisServicesBuilder.populateA
llServices(WSDL11ToAllAxisServicesBuilder.java:107)
at
org.apache.axis2.wsdl.codegen.CodeGenerationEngine.<init>(CodeGenerat
ionEngine.java:147)
... 2 more
C:\Projects\WSDLTEST>
<?xml version="1.0" encoding="UTF-8"?>
<!-- edited with XMLSpy v2008 rel. 2 (http://www.altova.com) by Mark Henning
(ITT Corp, AES Division) -->
<wsdl:definitions xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:soap="
http://schemas.xmlsoap.org/wsdl/soap/" xmlns:http="
http://schemas.xmlsoap.org/wsdl/http/" xmlns:xs="
http://www.w3.org/2001/XMLSchema" xmlns:soapenc="
http://schemas.xmlsoap.org/soap/encoding/" xmlns:mime="
http://schemas.xmlsoap.org/wsdl/mime/" xmlns:itt-ser="
http://www.itt.com/aes/SERPENT/3/0" xmlns:itt-fault="
http://www.itt.com/aes/SERPENT/3/0/fault" xmlns:itt-typ="
http://www.itt.com/aes/SERPENT/3/0/type" xmlns:tns="
http://www.itt.com/aes/SERPENT/3/0" xmlns:ns="
http://www.itt.com/aes/SERPENT/3/0/types" targetNamespace="
http://www.itt.com/aes/SERPENT/3/0">
<wsdl:import namespace="http://www.itt.com/aes/SERPENT/3/0/fault"
location="./SerpentFault.wsdl"/>
<wsdl:types>
<xs:schema targetNamespace="http://www.itt.com/aes/SERPENT/3/0"
xmlns="http://www.itt.com/aes/SERPENT/3/0">
<xs:import namespace="http://www.itt.com/aes/SERPENT/3/0/types"
schemaLocation="../XSD/Payloads.xsd"/>
<xs:import namespace="http://www.itt.com/aes/SERPENT/3/0/types"
schemaLocation="../XSD/Permutation.xsd"/>
</xs:schema>
</wsdl:types>
<wsdl:message name="MutateRequest">
<wsdl:part name="parameters" type="ns:MutationParamType"/>
<wsdl:part name="payload" type="ns:Payload"/>
</wsdl:message>
<wsdl:message name="MutateResponse">
<wsdl:part name="copies" type="ns:PayloadSetType"/>
</wsdl:message>
<wsdl:portType name="Permutation">
<wsdl:operation name="Mutate">
<wsdl:input message="itt-ser:MutateRequest"/>
<wsdl:output message="itt-ser:MutateResponse"/>
<wsdl:fault name="MutateFault" message="itt-fault:SerpentFault"/>
</wsdl:operation>
</wsdl:portType>
<wsdl:binding name="SOAPBinding" type="tns:Permutation">
<soap:binding style="document" transport="
http://schemas.xmlsoap.org/soap/http"/>
<wsdl:operation name="itt-ser:Mutate">
<soap:operation soapAction="urn:#Permutation"/>
<wsdl:input>
<soap:body use="literal"/>
</wsdl:input>
<wsdl:output>
<soap:body use="literal"/>
</wsdl:output>
<wsdl:fault name="MutateFault">
<soap:body use="literal"/>
</wsdl:fault>
</wsdl:operation>
</wsdl:binding>
<wsdl:service name="PermutationService">
<wsdl:port name="SOAPPort" binding="itt-ser:SOAPBinding">
<soap:address location="http://localhost:8087/axis2/Permute"/>
</wsdl:port>
</wsdl:service>
</wsdl:definitions>
<?xml version="1.0" encoding="UTF-8"?>
<wsdl:definitions xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:soap="
http://schemas.xmlsoap.org/wsdl/soap/" xmlns:http="
http://schemas.xmlsoap.org/wsdl/http/" xmlns:xs="
http://www.w3.org/2001/XMLSchema" xmlns:soapenc="
http://schemas.xmlsoap.org/soap/encoding/" xmlns:mime="
http://schemas.xmlsoap.org/wsdl/mime/" xmlns:tns="
http://www.itt.com/aes/SERPENT/3/0/fault" targetNamespace="
http://www.itt.com/aes/SERPENT/3/0/fault">
<wsdl:message name="SerpentFault">
<wsdl:part name="message" type="xs:string"/>
<wsdl:part name="content" type="xs:anyType"/>
</wsdl:message>
</wsdl:definitions>
<?xml version="1.0" encoding="UTF-8"?>
<!-- edited with XMLSpy v2008 (http://www.altova.com) by Mark Henning (ITT
Corp, AES Division) -->
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:itt-typ="
http://www.itt.com/aes/SERPENT/3/0/types" targetNamespace="
http://www.itt.com/aes/SERPENT/3/0/types" elementFormDefault="qualified"
attributeFormDefault="unqualified">
<xs:element name="PayloadWrapper" type="itt-typ:Payload">
<xs:annotation>
<xs:documentation>Wrapper for other XML
documents</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="PayloadSet" type="itt-typ:PayloadSetType">
<xs:annotation>
<xs:documentation>wrapper for modified XML
documents</xs:documentation>
</xs:annotation>
</xs:element>
<xs:complexType name="Payload">
<xs:annotation>
<xs:documentation>Any XML document Type</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="xs:anyType"/>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="PayloadSetType">
<xs:annotation>
<xs:documentation>A set of payloads</xs:documentation>
</xs:annotation>
<xs:sequence>
<xs:element name="Payload" type="itt-typ:Payload"
maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:schema>
<?xml version="1.0" encoding="UTF-8"?>
<!-- edited with XMLSpy v2008 (http://www.altova.com) by Mark Henning (ITT
Corp, AES Division) -->
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:ns1="
http://www.w3.org/2005/XQueryX" xmlns:itt-typ="
http://www.itt.com/aes/SERPENT/3/0/types" targetNamespace="
http://www.itt.com/aes/SERPENT/3/0/types" elementFormDefault="qualified"
attributeFormDefault="unqualified">
<xs:element name="MutationParam" type="itt-typ:MutationParamType">
<xs:annotation>
<xs:documentation>The parameters that describe a mutation
request</xs:documentation>
</xs:annotation>
</xs:element>
<xs:complexType name="LinearParameter">
<xs:sequence>
<xs:element name="From" type="xs:double"/>
<xs:element name="To" type="xs:double"/>
<xs:element name="NumValues" type="xs:positiveInteger"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="UniformParameter">
<xs:sequence>
<xs:element name="MinVal" type="xs:double"/>
<xs:element name="MaxVal" type="xs:double"/>
<xs:element name="NumValues" type="xs:positiveInteger"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="GaussianParameter">
<xs:sequence>
<xs:element name="Mean" type="xs:double"/>
<xs:element name="StdDev" type="xs:double"/>
<xs:element name="NumValues"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="SpecifiedValuesParameter">
<xs:sequence>
<xs:element name="Value" type="xs:anySimpleType"
maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="MutationParamType">
<xs:sequence>
<xs:element name="copies" type="xs:positiveInteger" minOccurs="0"/>
<xs:element name="Operations" maxOccurs="unbounded">
<xs:complexType>
<xs:sequence>
<xs:element name="Operation" maxOccurs="unbounded">
<xs:complexType>
<xs:sequence>
<xs:element name="Path" type="xs:string"
maxOccurs="unbounded"/>
<xs:choice>
<xs:element name="Linear"
type="itt-typ:LinearParameter"/>
<xs:element name="Gaussian"
type="itt-typ:GaussianParameter"/>
<xs:element name="Uniform"
type="itt-typ:UniformParameter"/>
<xs:element name="Specified"
type="itt-typ:SpecifiedValuesParameter"/>
<xs:element name="Scale" type="xs:double"/>
<xs:element name="Add" type="xs:double"/>
</xs:choice>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:schema>