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

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

Expand Messages
  • crazyfewl2002
    Oct 1, 2002
      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) );

      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,
    • Show all 3 messages in this topic