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

Re: [soaplite] Overriding Envelope Attributes

Expand Messages
  • Byrne Reese
    In SOAP::Lite 0.60 and 0.65, you can easily add a new namespace to the envelope using the following: $soap- serializer- register_ns( http://uri , myprefix )
    Message 1 of 3 , Apr 13 7:24 AM
    • 0 Attachment
      In SOAP::Lite 0.60 and 0.65, you can easily add a new namespace to the
      envelope using the following:

      $soap->serializer->register_ns("http://uri","myprefix")

      Graham Irvine wrote:

      >
      > Hi
      >
      > Using SOAP::Lite as a client can I manipulate the Envelope Attributes
      > easily .
      >
      > i.e
      >
      > SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
      > 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"
      > xmlns:namesp1="http://namespaces.soaplite.com/perl">
      >
      > I tried a simple $soap->({attr => ...}) but it didnt seem to work
      > as expected.
      >
      > Its to satisfy an interop empasse regarding some slight diffs in these
      > values and an additional attribute of xmlns:si.
      >
      > Thanks
      > Graham
      >
      >
      >
      >
      >
      >
      >
      >
      >
      >
      >
      >
      > ------------------------------------------------------------------------
      > *Yahoo! Groups Links*
      >
      > * To visit your group on the web, go to:
      > http://groups.yahoo.com/group/soaplite/
      >
      > * To unsubscribe from this group, send an email to:
      > soaplite-unsubscribe@yahoogroups.com
      > <mailto:soaplite-unsubscribe@yahoogroups.com?subject=Unsubscribe>
      >
      > * Your use of Yahoo! Groups is subject to the Yahoo! Terms of
      > Service <http://docs.yahoo.com/info/terms/>.
      >
      >
    • Graham Irvine
      ... That doesnt work with 0.60a (CPAN version). It does however work with 0.65_beta4 so may be of use in the future. However your post did help me with my add
      Message 2 of 3 , Apr 13 8:09 PM
      • 0 Attachment
        --- In soaplite@yahoogroups.com, Byrne Reese <byrne@m...> wrote:
        > In SOAP::Lite 0.60 and 0.65, you can easily add a new namespace to the
        > envelope using the following:
        >
        > $soap->serializer->register_ns("http://uri","myprefix")

        That doesnt work with 0.60a (CPAN version). It does however work with
        0.65_beta4 so may be of use in the future.

        However your post did help me with my add an envelope attribute since
        it showed me why i was not getting my new attribute added . Thus

        $soap->serializer->attr({"xmlns:si"=>"http://soapinterop.org/xsd",
        "xmlns:xsi"=>"http://www.w3.org/2001/XMLSchema-instance"});

        Half way there .. the second attribute is obviously re-written again
        for the soap call.

        I am not really sure of the value of this but whilst i am not posting
        the "same" envelope attributes as there "native" client im being asked
        to mimic its not open and shut that a problem with soap service is
        there end.

        Maybe someone can explain exactly why SOAP::Lite uses the xsi it does
        where everywhere else uses the 2001 URL yet still being SOAP 1.1. and
        if its relevant ..

        My own feeling here is most client and serverware here pursuit there
        own limits and interop capabilitys and this sort of thing is paid
        lipservice at best , or am i very wrong and just suffering from soap
        interop fatigue <laughs> ?

        Ive amended the SOAP::Constant value to the one specified and tested
        every webservice i can think of and it has not made any difference in
        the response. Those that work still work . those that dont still dont .
        Graham


        > Graham Irvine wrote:
        >
        > >
        > > Hi
        > >
        > > Using SOAP::Lite as a client can I manipulate the Envelope Attributes
        > > easily .
        > >
        > > i.e
        > >
        > > SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
        > > 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"
        > > xmlns:namesp1="http://namespaces.soaplite.com/perl">
        > >
        > > I tried a simple $soap->({attr => ...}) but it didnt seem to work
        > > as expected.
        > >
        > > Its to satisfy an interop empasse regarding some slight diffs in these
        > > values and an additional attribute of xmlns:si.
        > >
        > > Thanks
        > > Graham
        > >
        > >
        > >
        > >
        > >
        > >
        > >
        > >
        > >
        > >
        > >
        > >
        > >
        ------------------------------------------------------------------------
        > > *Yahoo! Groups Links*
        > >
        > > * To visit your group on the web, go to:
        > > http://groups.yahoo.com/group/soaplite/
        > >
        > > * To unsubscribe from this group, send an email to:
        > > soaplite-unsubscribe@yahoogroups.com
        > >
        <mailto:soaplite-unsubscribe@yahoogroups.com?subject=Unsubscribe>
        > >
        > > * Your use of Yahoo! Groups is subject to the Yahoo! Terms of
        > > Service <http://docs.yahoo.com/info/terms/>.
        > >
        > >
      Your message has been successfully submitted and would be delivered to recipients shortly.