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

Re: [soaplite] I posted earlier, this time i will try and make sense

Expand Messages
  • Byrne Reese
    Aaaah. This is a much better question. Your problem is something that will be fixed in the next release of SOAP::Lite. In the next release, namespaces can be
    Message 1 of 6 , Jan 19, 2004
    • 0 Attachment
      Aaaah. This is a much better question. Your problem is something that will
      be fixed in the next release of SOAP::Lite. In the next release,
      namespaces can be registered globally, and namespaces can be searched by
      prefix and uri as to avoid namespace proliferation. In the meantime, there
      is a work around. You need to modify the root element of the request, and
      specify namespaces and namespace prefixes manually. Check out the
      following article on majordojo to learn how:

      http://www.majordojo.com/archives/000009.html

      > I need to create some XML that looks like this -
      >
      > xmlns:m0="m0:NAMESPACE"SOAP-ENV:Headerm:LoginHeader
      > xmlns:m="m:NAMESPACE"m0:username/m0:usernamem0:password/m0:password/m:LoginHeader/SOAP-ENV:HeaderSOAP-ENV:Bodym:SearchHotels
      > xmlns:m="m:NAMESPACE"m:sDestination/m:sDestinationm:sHotelName/m:sHotelName


      ^byrne :/
    • cynicalearth
      Ok, I have progressed a lot further. I still have two issues - 1. I still can t get the namespace m0 into the envolope, i have been looking at the module and
      Message 2 of 6 , Jan 21, 2004
      • 0 Attachment
        Ok, I have progressed a lot further. I still have two issues -

        1. I still can't get the namespace "m0" into the envolope, i have
        been looking at the module and trying every method possible but still
        seem to be bangin my head against the wall.
        2. Is there anyway not to show the xsd types?

        --- In soaplite@yahoogroups.com, "Byrne Reese" <byrne@m...> wrote:
        > Aaaah. This is a much better question. Your problem is something
        that will
        > be fixed in the next release of SOAP::Lite. In the next release,
        > namespaces can be registered globally, and namespaces can be
        searched by
        > prefix and uri as to avoid namespace proliferation. In the
        meantime, there
        > is a work around. You need to modify the root element of the
        request, and
        > specify namespaces and namespace prefixes manually. Check out the
        > following article on majordojo to learn how:
        >
        > http://www.majordojo.com/archives/000009.html
        >
        > > I need to create some XML that looks like this -
        > >
        > > xmlns:m0="m0:NAMESPACE"SOAP-ENV:Headerm:LoginHeader
        > >
        xmlns:m="m:NAMESPACE"m0:username/m0:usernamem0:password/m0:password/m:
        LoginHeader/SOAP-ENV:HeaderSOAP-ENV:Bodym:SearchHotels
        > >
        xmlns:m="m:NAMESPACE"m:sDestination/m:sDestinationm:sHotelName/m:sHote
        lName
        >
        >
        > ^byrne :/
      • cynicalearth
        Point 2, I have now worked out. Still can t get point 1 though ... still ... xmlns:m= m:NAMESPACE m:sDestination/m:sDestinationm:sHotelName/m:sHote
        Message 3 of 6 , Jan 21, 2004
        • 0 Attachment
          Point 2, I have now worked out.

          Still can't get point 1 though

          --- In soaplite@yahoogroups.com, "cynicalearth" <forums@c...> wrote:
          > Ok, I have progressed a lot further. I still have two issues -
          >
          > 1. I still can't get the namespace "m0" into the envolope, i have
          > been looking at the module and trying every method possible but
          still
          > seem to be bangin my head against the wall.
          > 2. Is there anyway not to show the xsd types?
          >
          > --- In soaplite@yahoogroups.com, "Byrne Reese" <byrne@m...> wrote:
          > > Aaaah. This is a much better question. Your problem is something
          > that will
          > > be fixed in the next release of SOAP::Lite. In the next release,
          > > namespaces can be registered globally, and namespaces can be
          > searched by
          > > prefix and uri as to avoid namespace proliferation. In the
          > meantime, there
          > > is a work around. You need to modify the root element of the
          > request, and
          > > specify namespaces and namespace prefixes manually. Check out the
          > > following article on majordojo to learn how:
          > >
          > > http://www.majordojo.com/archives/000009.html
          > >
          > > > I need to create some XML that looks like this -
          > > >
          > > > xmlns:m0="m0:NAMESPACE"SOAP-ENV:Headerm:LoginHeader
          > > >
          >
          xmlns:m="m:NAMESPACE"m0:username/m0:usernamem0:password/m0:password/m:
          > LoginHeader/SOAP-ENV:HeaderSOAP-ENV:Bodym:SearchHotels
          > > >
          >
          xmlns:m="m:NAMESPACE"m:sDestination/m:sDestinationm:sHotelName/m:sHote
          > lName
          > >
          > >
          > > ^byrne :/
        • cynicalearth
          I forgot to include this in the post below.... my code currently looks like this but it doesn t give me what i need $soap = SOAP::Lite - autotype(0) -
          Message 4 of 6 , Jan 21, 2004
          • 0 Attachment
            I forgot to include this in the post below.... my code currently
            looks like this but it doesn't give me what i need

            $soap = SOAP::Lite
            -> autotype(0)
            -> namespace("m0")
            -> xmlschema('http://www.w3.org/2001/XMLSchema')
            -> uri($ns2)
            -> on_action(sub{sprintf '%s/%s', @_ })
            -> proxy($proxy);

            $method = SOAP::Data->name("SearchHotels")->prefix("m")->uri($ns1);
            And then i have all the parameter stuff.... but that all looks lovely

            what i need is an envelope that looks like this -

            <SOAP-ENV:Envelope
            xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"
            xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/"
            xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
            xmlns:xsd="http://www.w3.org/2001/XMLSchema"
            xmlns:m0="http://tourico.com/travelservices/">

            --- In soaplite@yahoogroups.com, "cynicalearth" <forums@c...> wrote:
            > Point 2, I have now worked out.
            >
            > Still can't get point 1 though
            >
            > --- In soaplite@yahoogroups.com, "cynicalearth" <forums@c...> wrote:
            > > Ok, I have progressed a lot further. I still have two issues -
            > >
            > > 1. I still can't get the namespace "m0" into the envolope, i have
            > > been looking at the module and trying every method possible but
            > still
            > > seem to be bangin my head against the wall.
            > > 2. Is there anyway not to show the xsd types?
            > >
            > > --- In soaplite@yahoogroups.com, "Byrne Reese" <byrne@m...> wrote:
            > > > Aaaah. This is a much better question. Your problem is
            something
            > > that will
            > > > be fixed in the next release of SOAP::Lite. In the next release,
            > > > namespaces can be registered globally, and namespaces can be
            > > searched by
            > > > prefix and uri as to avoid namespace proliferation. In the
            > > meantime, there
            > > > is a work around. You need to modify the root element of the
            > > request, and
            > > > specify namespaces and namespace prefixes manually. Check out
            the
            > > > following article on majordojo to learn how:
            > > >
            > > > http://www.majordojo.com/archives/000009.html
            > > >
            > > > > I need to create some XML that looks like this -
            > > > >
            > > > > xmlns:m0="m0:NAMESPACE"SOAP-ENV:Headerm:LoginHeader
            > > > >
            > >
            >
            xmlns:m="m:NAMESPACE"m0:username/m0:usernamem0:password/m0:password/m:
            > > LoginHeader/SOAP-ENV:HeaderSOAP-ENV:Bodym:SearchHotels
            > > > >
            > >
            >
            xmlns:m="m:NAMESPACE"m:sDestination/m:sDestinationm:sHotelName/m:sHote
            > > lName
            > > >
            > > >
            > > > ^byrne :/
          • Byrne Reese
            I don t mean to be hard headed, but placing the NS declaration in the Envelope and in the method call is functionally equivalent. I say that only to underscore
            Message 5 of 6 , Jan 21, 2004
            • 0 Attachment
              I don't mean to be hard headed, but placing the NS declaration in the
              Envelope and in the method call is functionally equivalent.

              I say that only to underscore how odd the behavior is.

              To get your XML even closer to what is "expected" by the server, I might
              try adding the correct ns prefix to every element in the method.

              Honestly, I am using voodoo here, as I am not sure why .NET will not parse
              the request properly.

              BTW - what is the SOAP Fault coming back from .NET?

              The behavior you are looking for is available in CVS and will be released
              with SOAP::Lite 0.65.

              >
              >
              >
              >
              > I forgot to include this in the post below.... my code currently
              > looks like this but it doesn't give me what i need
              >
              > $soap = SOAP::Lite
              > -< autotype(0)
              > -< namespace("m0")
              > -< xmlschema('http://www.w3.org/2001/XMLSchema')
              > -< uri($ns2)
              > -< on_action(sub{sprintf '%s/%s', @_ })
              > -< proxy($proxy);
              >
              > $method = SOAP::Data-byrne@m...< wrote:
              > < < < Aaaah. This is a much better question. Your problem is
              > something
              > < < that will
              > < < < be fixed in the next release of SOAP::Lite. In the next release,
              > < < < namespaces can be registered globally, and namespaces can be
              > < < searched by
              > < < < prefix and uri as to avoid namespace proliferation. In the
              > < < meantime, there
              > < < < is a work around. You need to modify the root element of the
              > < < request, and
              > < < < specify namespaces and namespace prefixes manually. Check out
              > the
              > < < < following article on majordojo to learn how:
              > < < <
              > < < < http://www.majordojo.com/archives/000009.html
              > < < <
              > < < < < I need to create some XML that looks like this -
              > < < <
              >
              >
              >
              >
              > 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
              > Your use of Yahoo! Groups is subject to the Yahoo! Terms of Service.
              >
              >
              >
              >
              >
              >
              >


              ^byrne :/
            Your message has been successfully submitted and would be delivered to recipients shortly.