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

1886RE: [soaplite] How to integrate SOAP::Lite into a custom server

Expand Messages
  • Keanan Smith
    Oct 1, 2002
    • 0 Attachment
      Hmm, it seems to me the quickest way (Provided you don't want to go with
      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 will
      handle the soap request and send the proper response back to the webserver
      (Who is free to pass it back to the client :)

      -----Original Message-----
      From: crazyfewl2002 [mailto:tom@...]
      Sent: Tuesday, October 01, 2002 8:42 AM
      To: soaplite@yahoogroups.com
      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 pass
      them via a proprietary interface to own in-house application server.

      This application server will ideally instantiate a SOAP::Lite object
      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 apache
      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@yahoogroups.com



      Your use of Yahoo! Groups is subject to http://docs.yahoo.com/info/terms/
    • Show all 3 messages in this topic