Hello, Thanks for answer. The space was removed when copy pasting in mail, my comman is not: wsdlvalidator -V -s http://cxf.apache.org/schemassrc/main/resources/wsdl/CustomerService.wsdl but wsdlvalidator -V -s http://cxf.apache.org/schemas src/main/resources/wsdl/CustomerService.wsdl
Regards On Fri, May 10, 2013 at 2:17 PM, Aki Yoshida <[email protected]> wrote: > I think what you described in incomplete. > You mention that you are using the "-s" option. So I suppose you are > passing your extra schema to this option. And that schema has something > that is related to this error. Your wsdl itself is okay. You should be able > to validate it directly as it has no external references. > > > > > 2013/5/10 Philippe Bossu <[email protected]> > > > 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> > > >
