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

Re: How to integrate SOAP::Lite into a custom server

Expand Messages
  • crazyfewl2002
    I have discovered after much digging that the following works rather nicely... use SOAP::Lite; my $server = new SOAP::Server;
    Message 1 of 3 , Oct 1 10:54 AM
    • 0 Attachment
      I have discovered after much digging that the following works rather

      use SOAP::Lite;
      my $server = new SOAP::Server;
      my $response = $server->handle( $xml );

      Just got to figure out how to format the headers correctly in my
      response and it should work nicely.

      Shame this isnt documented. The above approach means I can now run
      the SOAP Handler in my existing multiprocess preforking server and
      away from apache.

      --- In soaplite@y..., Keanan Smith <KSmith@n...> wrote:
      > Hmm, it seems to me the quickest way (Provided you don't want to go
      > mod_perl) is to go with the CGI transport method, then you can
      simply invoke
      > your 'service' as a cgi through your existing webserver, and soap
      > handle the soap request and send the proper response back to the
      > (Who is free to pass it back to the client :)
      > -----Original Message-----
      > From: crazyfewl2002 [mailto:tom@a...]
      > Sent: Tuesday, October 01, 2002 8:42 AM
      > To: soaplite@y...
      > Subject: [soaplite] How to integrate SOAP::Lite into a custom server
      > I am trying to setup a SOAP server based on an existing
      > webserver/application server infrastructure. SOAP::Lite as a server
      > seems to insist on using its on transport mechanisms. Is there some
      > way to provide it with the XML message manually and have it simply
      > take care of the method invocation.
      > We do not want to use the SOAP mod perl transport since we do not
      > want to run any business logic on our webservers.
      > Here is our scenario:
      > We have an apache front end that will be accepting SOAP requests.
      > A Perl handler will take the SOAP XML documents it receives and
      > them via a proprietary interface to own in-house application
      > This application server will ideally instantiate a SOAP::Lite
      > using the passed XML message. It will then trigger any
      > methods/classes as per usual.
      > My 2 issues are
      > 1) Making sure all the right information is collected on the
      > end. So far I have $r->read() the POSTED content, ie the XML and
      > suspect the various additional http headers are not required unless
      > we want to compress the data.
      > 2) Instantiating a server SOAP::Lite object within an _existing_
      > server framework by providing it with an XML document. This bit I
      > cant seem to fathom since all examples presume use of the bundled
      > Transport mechanisms.
      > This is the sort of thing I have been trying ...
      > $xml is the xml message received from the client
      > my $s = new SOAP::Server;
      > $s->request( HTTP::Request->new($xml) );
      > $s->dispatch_to('/my/modules/dir/');
      > $s->handle;
      > This doesnt work since SOAP::Server doesnt know what ->request()
      > method is. But it should explain what I'm trying to do.
      > Any suggestions/comments appreciated.
      > Many thanks,
      > Tom
      > To unsubscribe from this group, send an email to:
      > soaplite-unsubscribe@y...
      > Your use of Yahoo! Groups is subject to
    Your message has been successfully submitted and would be delivered to recipients shortly.