cxf-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Philippe Bossu <pbo...@gmail.com>
Subject Re: wsdlvalidator ends with [Fatal Error] :1:55: White spaces are required between publicId and systemId.
Date Fri, 10 May 2013 12:25:31 GMT
Note I have searched on StackOverflow and in users mailing list, this error
is rather generic (not always related to CXF) and users mention it happens
when an included XSD is wrong or returns HTML but in my case I am not
concerned as I am not using any external XSD.
I don't think CXF goes on the internet to grab the XSD used in its
validation, and note I am not behind a proxy so it should not be an issue.

Note also this is not my real WSDL which included XSDs, but I simplified it
to see if issue was related.

So for now I don't see what I am doing wrong here.

In fact there is something not clear for me about how "-s
http://cxf.apache.org/schemas" is  supposed to work, any explanation is
welcome maybe it can help me fix my issue.

Thanks for your help.

On Fri, May 10, 2013 at 2:20 PM, Philippe Bossu <pbossu@gmail.com> wrote:

> 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 <elakito@gmail.com> 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 <pbossu@gmail.com>
>>
>> > 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>
>> >
>>
>
>

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message