Hello,
I am trying to use wsdlvalidator with the following command line options:
wsdlvalidator -s -V
http://cxf.apache.org/schemassrc/main/resources/wsdl/CustomerService.wsdl

I get this output:
wsdlvalidator -V -s
http://cxf.apache.org/schemassrc/main/resources/wsdl/CustomerService.wsdl
wsdlvalidator - Apache CXF 2.7.4

[Fatal Error] :1:55: White spaces are required between publicId and
systemId.
WSDLValidator Error : org.xml.sax.SAXParseException: White spaces are
required between publicId and systemId.

[+] Verbose turned on

org.apache.cxf.tools.common.ToolException: org.xml.sax.SAXParseException:
White spaces are required between publicId and systemId.
at
org.apache.cxf.tools.validator.internal.SchemaValidator.validate(SchemaValidator.java:211)
at
org.apache.cxf.tools.validator.internal.SchemaValidator.validate(SchemaValidator.java:119)
at
org.apache.cxf.tools.validator.internal.SchemaValidator.isValid(SchemaValidator.java:103)
at
org.apache.cxf.tools.validator.internal.WSDL11Validator.isValid(WSDL11Validator.java:157)
at
org.apache.cxf.tools.validator.WSDLValidator.execute(WSDLValidator.java:81)
at
org.apache.cxf.tools.common.toolspec.ToolRunner.runTool(ToolRunner.java:103)
at
org.apache.cxf.tools.common.toolspec.ToolRunner.runTool(ToolRunner.java:58)
at
org.apache.cxf.tools.common.toolspec.ToolRunner.runTool(ToolRunner.java:40)
at org.apache.cxf.tools.validator.WSDLValidator.main(WSDLValidator.java:110)
Caused by: org.xml.sax.SAXParseException: White spaces are required between
publicId and systemId.
at
com.sun.org.apache.xerces.internal.parsers.DOMParser.parse(DOMParser.java:246)
at
com.sun.org.apache.xerces.internal.jaxp.DocumentBuilderImpl.parse(DocumentBuilderImpl.java:284)
at javax.xml.parsers.DocumentBuilder.parse(DocumentBuilder.java:180)
at
org.apache.cxf.tools.validator.internal.SchemaValidator.createSchema(SchemaValidator.java:145)
at
org.apache.cxf.tools.validator.internal.SchemaValidator.validate(SchemaValidator.java:190)
... 8 more


Thanks for your help

My wsdl has no xsd imports:

<?xml version="1.0" encoding="UTF-8"?>

<wsdl:definitions name="CustomerServiceService"

targetNamespace="http://customerservice.example.com/";

xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/";

xmlns:tns="http://customerservice.example.com/";

xmlns:xsd="http://www.w3.org/2001/XMLSchema";

 xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/";>

  <wsdl:types>

<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"; xmlns:tns="
http://customerservice.example.com/";

attributeFormDefault="unqualified" elementFormDefault="unqualified"
targetNamespace="http://customerservice.example.com/";>

  <xs:element name="getCustomerById" type="tns:getCustomerById"/>

  <xs:element name="getCustomerByIdResponse" type=
"tns:getCustomerByIdResponse"/>

  <xs:element name="getCustomersByName" type="tns:getCustomersByName"/>

  <xs:element name="getCustomersByNameResponse" type=
"tns:getCustomersByNameResponse"/>

  <xs:complexType name="getCustomerById">

    <xs:sequence>

      <xs:element minOccurs="0" name="id" type="xs:string"/>

    </xs:sequence>

  </xs:complexType>

  <xs:complexType name="getCustomerByIdResponse">

    <xs:sequence>

      <xs:element minOccurs="0" name="return" type="tns:customer"/>

    </xs:sequence>

  </xs:complexType>

  <xs:complexType name="customer">

    <xs:sequence>

      <xs:element minOccurs="0" name="name" type="xs:string"/>

      <xs:element maxOccurs="unbounded" minOccurs="0" name="address"
nillable="true" type="xs:string"/>

      <xs:element name="numOrders" type="xs:int"/>

      <xs:element name="revenue" type="xs:double"/>

      <xs:element minOccurs="0" name="test" type="xs:decimal"/>

      <xs:element minOccurs="0" name="birthDate" type="xs:dateTime"/>

      <xs:element minOccurs="0" name="type" type="tns:customerType"/>

    </xs:sequence>

  </xs:complexType>

  <xs:complexType name="getCustomersByName">

    <xs:sequence>

      <xs:element minOccurs="0" name="name" type="xs:string"/>

    </xs:sequence>

  </xs:complexType>

  <xs:complexType name="getCustomersByNameResponse">

    <xs:sequence>

      <xs:element maxOccurs="unbounded" minOccurs="0" name="return" type=
"tns:customer"/>

    </xs:sequence>

  </xs:complexType>

  <xs:simpleType name="customerType">

    <xs:restriction base="xs:string">

      <xs:enumeration value="PRIVATE"/>

      <xs:enumeration value="BUSINESS"/>

    </xs:restriction>

  </xs:simpleType>

  <xs:element name="NoSuchCustomer" type="tns:NoSuchCustomer"/>

  <xs:complexType name="NoSuchCustomer">

    <xs:sequence>

      <xs:element name="customerName" nillable="true" type="xs:string"/>

    </xs:sequence>

  </xs:complexType>

</xs:schema>

  </wsdl:types>

  <wsdl:message name="getCustomersByNameResponse">

    <wsdl:part name="parameters" element="tns:getCustomersByNameResponse">

    </wsdl:part>

  </wsdl:message>

  <wsdl:message name="getCustomerById">

    <wsdl:part name="parameters" element="tns:getCustomerById">

    </wsdl:part>

  </wsdl:message>

  <wsdl:message name="getCustomersByName">

    <wsdl:part name="parameters" element="tns:getCustomersByName">

    </wsdl:part>

  </wsdl:message>

  <wsdl:message name="getCustomerByIdResponse">

    <wsdl:part name="parameters" element="tns:getCustomerByIdResponse">

    </wsdl:part>

  </wsdl:message>

  <wsdl:message name="NoSuchCustomerException">

    <wsdl:part name="NoSuchCustomerException" element="tns:NoSuchCustomer">

    </wsdl:part>

  </wsdl:message>

  <wsdl:portType name="CustomerService">

    <wsdl:operation name="getCustomerById">

      <wsdl:input name="getCustomerById" message="tns:getCustomerById">

    </wsdl:input>

      <wsdl:output name="getCustomerByIdResponse" message=
"tns:getCustomerByIdResponse">

    </wsdl:output>

      <wsdl:fault name="NoSuchCustomerException" message=
"tns:NoSuchCustomerException">

    </wsdl:fault>

    </wsdl:operation>

    <wsdl:operation name="getCustomersByName">

      <wsdl:input name="getCustomersByName" message="tns:getCustomersByName"
>

    </wsdl:input>

      <wsdl:output name="getCustomersByNameResponse" message=
"tns:getCustomersByNameResponse">

    </wsdl:output>

      <wsdl:fault name="NoSuchCustomerException" message=
"tns:NoSuchCustomerException">

    </wsdl:fault>

    </wsdl:operation>

  </wsdl:portType>

  <wsdl:binding name="CustomerServiceServiceSoapBinding" type=
"tns:CustomerService">

    <soap:binding style="document" transport="
http://schemas.xmlsoap.org/soap/http"/>

    <wsdl:operation name="getCustomerById">

      <soap:operation soapAction="" style="document"/>

      <wsdl:input name="getCustomerById">

        <soap:body use="literal"/>

      </wsdl:input>

      <wsdl:output name="getCustomerByIdResponse">

        <soap:body use="literal"/>

      </wsdl:output>

      <wsdl:fault name="NoSuchCustomerException">

        <soap:fault name="NoSuchCustomerException" use="literal"/>

      </wsdl:fault>

    </wsdl:operation>

    <wsdl:operation name="getCustomersByName">

      <soap:operation soapAction="" style="document"/>

      <wsdl:input name="getCustomersByName">

        <soap:body use="literal"/>

      </wsdl:input>

      <wsdl:output name="getCustomersByNameResponse">

        <soap:body use="literal"/>

      </wsdl:output>

      <wsdl:fault name="NoSuchCustomerException">

        <soap:fault name="NoSuchCustomerException" use="literal"/>

      </wsdl:fault>

    </wsdl:operation>

  </wsdl:binding>

  <wsdl:service name="CustomerServiceService">

    <wsdl:port name="CustomerServicePort" binding=
"tns:CustomerServiceServiceSoapBinding">

      <soap:address location="http://localhost:9090/CustomerServicePort"/>

    </wsdl:port>

  </wsdl:service>

</wsdl:definitions>

Reply via email to