Menu

#42 wrong XML Schema namespace used for arrays

0.55
closed-fixed
WSDL (18)
5
2004-09-27
2004-03-10
Jeff Yemin
No

Using the attached .wsdl file

Discussion

  • Jeff Yemin

    Jeff Yemin - 2004-03-10

    wsdl

     
  • Jeff Yemin

    Jeff Yemin - 2004-03-10
     
  • Jeff Yemin

    Jeff Yemin - 2004-03-10

    Logged In: YES
    user_id=469721

    Sorry...

    Using the attached wsdl and perl client code, SOAP::Lite is
    generating incorrect SOAP:

    <?xml version="1.0" encoding="UTF-8"?>
    <SOAP-ENV:Envelope
    xmlns:xsi="http://www.w3.org/1999/XMLSchema-instance"

    xmlns:SOAP-
    ENC="http://schemas.xmlsoap.org/soap/encoding/"

    xmlns:SOAP-
    ENV="http://schemas.xmlsoap.org/soap/envelope/"

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

    SOAP-
    ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encodi
    ng/">
    <SOAP-ENV:Body>
    <namesp1:addStrings
    xmlns:namesp1="http://www.visiblepath.com/services/vpservi
    ce">
    <strings
    xsi:type="ns:ArrayOfString"

    xmlns:ns="java:language_builtins.lang"

    SOAP-ENC:arrayType="xsd:string[3]">
    <item
    xsi:type="xsd:string">foo</item>
    <item
    xsi:type="xsd:string">bar</item>
    <item
    xsi:type="xsd:string">baz</item>
    </strings>
    </namesp1:addStrings>
    </SOAP-ENV:Body>
    </SOAP-ENV:Envelope>

    The problem is that the xsd prefix used for the array of
    strings and its elements refers to the namespace
    URI "http://www.w3.org/1999/XMLSchema", but the wsdl is
    expecting "http://www.w3.org/2001/XMLSchema".

    I can work around this problem by changing Lite.pm from
    DEFAULT_XML_SCHEMA
    => 'http://www.w3.org/1999/XMLSchema',
    to
    DEFAULT_XML_SCHEMA
    => 'http://www.w3.org/2001/XMLSchema',

     
  • Jeff Yemin

    Jeff Yemin - 2004-03-10
    • summary: sometimes wrong XML Schema namespace is used --> wrong XML Schema namespace used for arrays
     
  • Byrne Reese

    Byrne Reese - 2004-09-27
    • status: open --> closed-fixed
     
  • Byrne Reese

    Byrne Reese - 2004-09-27

    Logged In: YES
    user_id=28043

    This is being fixed in SOAP::Lite 0.65 when the default XML
    Schema will be 2001 (not 1999). Welcome to the 21st century
    SOAP::Lite.

     

Log in to post a comment.