Loading ...
Sorry, an error occurred while loading the content.

Re: [soaplite] Change namespace of the envelope?

Expand Messages
  • Paul Kulchenko
    Hi, Ramon! ... This is namespace from SOAP1.0 ... This is namespace from SOAP1.1. Most (if not all) of the toolkits available now on market are support this
    Message 1 of 2 , Sep 24, 2001
    View Source
    • 0 Attachment
      Hi, Ramon!

      > <SOAP:Envelope xmlns:SOAP="urn:schemas-xmlsoap-org:soap.v1"
      This is namespace from SOAP1.0

      > xmlns:xsi="http://www.w3.org/1999/XMLSchema-instance" xmlns:SOAP-
      > ENV="http://schemas.xmlsoap.org/soap/envelope/"
      This is namespace from SOAP1.1. Most (if not all) of the toolkits
      available now on market are support this version of SOAP and do not
      support SOAP1.0. SOAP::Lite does the same thing. It supports SOAP1.1
      and SOAP1.2, but if you want to generate SOAP1.0 (which I do not
      recommend), you can do it manually.

      Technically, there is an array (SOAP::Constants::SOAP_VERSIONS) that
      specifies namespaces for different versions. After you specify
      namespaces for SOAP1.0, you can call ->soapversion() method of
      SOAP::Lite and specify '1.0' as a parameter. Untested. It doesn't
      guarantee the result, because datatypes might be different too and
      you may need to provide your own serializer to customize it.

      I would recommend to use SOAP1.1 and don't think about SOAP1.0,
      because nobody will be able to interoperate with your toolkit.
      Probably the safest way is to update versions on both client and
      server. Are you using SOAP.pm from DevelopMentor?

      Best wishes, Paul.

      --- ramon_dei@... wrote:
      > Hello all,
      >
      > I met a problem when changing my perl program from SOAP to
      > SOAP::Lite. In the previous SOAP call, I specified the XML stream
      > as
      > following:
      >
      > <SOAP:Envelope xmlns:SOAP="urn:schemas-xmlsoap-org:soap.v1"
      > xmlns:xsd="urn:schemas-microsoft-com:datatypes"
      > xmlns:dt="urn:schemas-
      > microsoft-com:datatypes">
      > <SOAP:Body>...(method and
      > parameters)...</SOAP:Body></SOAP:Envelope>
      >
      > It works perfectly. When I change this to SOAP:Lite, it
      > automatically
      > generates something like this:
      >
      > <?xml version="1.0" encoding="UTF-8"?><SOAP-ENV:Envelope
      > xmlns:SOAP-
      > ENC="http://schemas.xmlsoap.org/soap/encoding/" SOAP-
      > ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
      > xmlns:xsi="http://www.w3.org/1999/XMLSchema-instance" xmlns:SOAP-
      > ENV="http://schemas.xmlsoap.org/soap/envelope/"
      > xmlns:xsd="http://www.w3.org/1999/XMLSchema"><SOAP-ENV:Body>...
      > (method and parameters>...</SOAP:Body></SOAP:Envelope>
      >
      > As you can see the difference of the namespace for the envelope, I
      > got an error message from the server like following:
      >
      > 100: Version Mismatch|Incorrect namespace for Envelope:
      > http://schemas.xmlsoap.org/soap/envelope
      >
      > Thus, my question is: is there any way to specify the namespace of
      > the envelope?
      >
      > Thanks,
      > Ramon
      >
      >
      > ------------------------ Yahoo! Groups Sponsor
      >
      > To unsubscribe from this group, send an email to:
      > soaplite-unsubscribe@yahoogroups.com
      >
      >
      >
      > Your use of Yahoo! Groups is subject to
      > http://docs.yahoo.com/info/terms/
      >
      >


      __________________________________________________
      Do You Yahoo!?
      Get email alerts & NEW webcam video instant messaging with Yahoo! Messenger. http://im.yahoo.com
    Your message has been successfully submitted and would be delivered to recipients shortly.