Mark Overmeer > XML-Compile-SOAP-Daemon > XML::Compile::SOAP::Daemon::CGI

Download:
XML-Compile-SOAP-Daemon-3.09.tar.gz

Dependencies

Annotate this POD

CPAN RT

Open  0
View/Report Bugs
Module Version: 3.09   Source  

NAME ^

XML::Compile::SOAP::Daemon::CGI - CGI based server

INHERITANCE ^

 XML::Compile::SOAP::Daemon::CGI
   is a XML::Compile::SOAP::Daemon

SYNOPSIS ^

 #### have a look in the examples directory!
 use XML::Compile::SOAP::Daemon::CGI;
 my $daemon = XML::Compile::SOAP::Daemon::CGI->new;

 # initialize definitions from WSDL
 my $wsdl    = XML::Compile::WSDL11->new(...);
 $wsdl->importDefinitions(...); # more schemas
 $daemon->operationsFromWSDL($wsdl, callbacks => ...);

 # per connected client
 my $query = CGI->new;
 $daemon->runCgiRequest(query => $query);

DESCRIPTION ^

This module handles the exchange of SOAP messages via Apache, using mod_perl and the popular Perl module CGI. Have a look at the examples/ directory, contained in the XML-Compile-SOAP-Daemon distribution.

This abstraction level of the object (code in this pm file) is not concerned with parsing or composing XML, but only worries about the HTTP transport specifics of SOAP messages.

Extends "DESCRIPTION" in XML::Compile::SOAP::Daemon.

METHODS ^

Extends "METHODS" in XML::Compile::SOAP::Daemon.

Constructors

Extends "Constructors" in XML::Compile::SOAP::Daemon.

XML::Compile::SOAP::Daemon::CGI->new(%options)
 -Option            --Defined in                --Default
  accept_slow_select  XML::Compile::SOAP::Daemon  <true>
  output_charset      XML::Compile::SOAP::Daemon  'UTF-8'
  soap_action_input   XML::Compile::SOAP::Daemon  {}
  wsa_action_input    XML::Compile::SOAP::Daemon  {}
  wsa_action_output   XML::Compile::SOAP::Daemon  {}
accept_slow_select => BOOLEAN
output_charset => STRING
soap_action_input => HASH|ARRAY
wsa_action_input => HASH|ARRAY
wsa_action_output => HASH|ARRAY

Attributes

Extends "Attributes" in XML::Compile::SOAP::Daemon.

$obj->addSoapAction(HASH|PAIRS)

Inherited, see "Attributes" in XML::Compile::SOAP::Daemon

$obj->addWsaTable( <'INPUT'|'OUTPUT'>, [HASH|PAIRS] )

Inherited, see "Attributes" in XML::Compile::SOAP::Daemon

$obj->outputCharset()

Inherited, see "Attributes" in XML::Compile::SOAP::Daemon

Running the server

Extends "Running the server" in XML::Compile::SOAP::Daemon.

$obj->process(%options)

Process the content of a single message. Not to be called directly.

 -Option--Default
  nph     <true>
nph => BOOLEAN

For FCGI, you probably need to set this to a false value.

$obj->run(%options)

Used by runCgiRequest() to process a connection. Not to be called directly.

$obj->runCgiRequest(%options)
 -Option     --Default
  postprocess  undef
  query        <created internally>
postprocess => CODE

When defined, the CODE will get called with a HASH (containing %options and other compile information), a HASH of headers (which you may change), the HTTP return code, and a reference to the message body (which may be changed as well).

Be warned that the message body must be considered as bytes, so not as Latin1 or utf-8 string. You may wish to add or remove bytes. The Content-Length will be added to the headers after the call.

query => <CGI object>

Preparations

Extends "Preparations" in XML::Compile::SOAP::Daemon.

$obj->addHandler($name, $soap, CODE)

Inherited, see "Preparations" in XML::Compile::SOAP::Daemon

$obj->operationsFromWSDL($wsdl, %options)

Inherited, see "Preparations" in XML::Compile::SOAP::Daemon

$obj->setWsdlResponse( $filename, [$filetype] )

Inherited, see "Preparations" in XML::Compile::SOAP::Daemon

Helpers

Extends "Helpers" in XML::Compile::SOAP::Daemon.

$obj->faultInvalidXML($error)

Inherited, see "Helpers" in XML::Compile::SOAP::Daemon

$obj->faultNotSoapMessage($nodetype)

Inherited, see "Helpers" in XML::Compile::SOAP::Daemon

$obj->faultUnsupportedSoapVersion($env_ns)

Inherited, see "Helpers" in XML::Compile::SOAP::Daemon

$obj->handlers( <'SOAP11'|'SOAP12'|$soap> )

Inherited, see "Helpers" in XML::Compile::SOAP::Daemon

$obj->printIndex( [$fh] )

Inherited, see "Helpers" in XML::Compile::SOAP::Daemon

$obj->soapVersions()

Inherited, see "Helpers" in XML::Compile::SOAP::Daemon

DETAILS ^

Extends "DETAILS" in XML::Compile::SOAP::Daemon.

Operation handlers

Extends "Operation handlers" in XML::Compile::SOAP::Daemon.

Returning errors

Extends "Returning errors" in XML::Compile::SOAP::Daemon.

How to use the CGI module

The code and documentation for this module was contributed by Patrick Powell in December 2010. Both have seen major changes since.

Go to the examples/mod_perl/ directory which is included in the distribution of this module, XML::Compile::SOAP::Daemon. There you find a README describing the process.

Configuring Apache

Your virtual host may need something like this:

    Options     Indexes FollowSymLinks MultiViews
    PerlHandler ModPerl::Registry
    PerlOptions -ParseHeaders
    AddHandler  perl-script .cgi
    Options     +ExecCGI
    Order       allow,deny
    Allow       from all

SEE ALSO ^

This module is part of XML-Compile-SOAP-Daemon distribution version 3.09, built on May 28, 2014. Website: http://perl.overmeer.net/xml-compile/

Other distributions in this suite: XML::Compile, XML::Compile::SOAP, XML::Compile::WSDL11, XML::Compile::SOAP12, XML::Compile::SOAP::Daemon, XML::Compile::SOAP::WSA, XML::Compile::C14N, XML::Compile::WSS, XML::Compile::WSS::Signature, XML::Compile::Tester, XML::Compile::Cache, XML::Compile::Dumper, XML::Compile::RPC, XML::Rewrite and XML::LibXML::Simple.

Please post questions or ideas to the mailinglist at http://lists.scsys.co.uk/cgi-bin/mailman/listinfo/xml-compile . For live contact with other developers, visit the #xml-compile channel on irc.perl.org.

LICENSE ^

Copyrights 2007-2014 by [Mark Overmeer]. For other contributors see ChangeLog.

This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself. See http://www.perl.com/perl/misc/Artistic.html

syntax highlighting: