The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

NAME

XML::Compile::SOAP12 - base class for SOAP1.2 implementation

INHERITANCE

 XML::Compile::SOAP12
   is a XML::Compile::SOAP

 XML::Compile::SOAP12 is extended by
   XML::Compile::SOAP12::Client
   XML::Compile::SOAP12::Server

SYNOPSIS

**WARNING** Implementation not finished: not usable!! I am looking for companies who will sponsor the two weeks of development time I need to complete this module.

DESCRIPTION

This module handles the SOAP protocol version 1.2. See http://www.w3.org/TR/soap12/).

The client specifics are implemented in XML::Compile::SOAP12::Client, and the server needs can be found in XML::Compile::SOAP12::Server.

See documentation in the base class.

METHODS

See documentation in the base class.

Constructors

See documentation in the base class.

$obj->new(OPTIONS)
 -Option      --Defined in        --Default
  header_fault                      error
  media_type    XML::Compile::SOAP  application/soap+xml
  schemas       XML::Compile::SOAP  created internally
header_fault => <anything>

SOAP1.1 defines a header fault type, which not present in SOAP 1.2, where it is replaced by a notUnderstood structure.

media_type => MIMETYPE
schemas => XML::Compile::Cache object
XML::Compile::SOAP12->register(URI, ENVNS)

See "Constructors" in XML::Compile::SOAP

Accessors

See documentation in the base class.

$obj->mediaType()

See "Accessors" in XML::Compile::SOAP

$obj->schemas()

See "Accessors" in XML::Compile::SOAP

$obj->version()

See "Accessors" in XML::Compile::SOAP

Single message

See documentation in the base class.

$obj->compileMessage(('SENDER'|'RECEIVER'), OPTIONS)
    # faults are always possible
    my @bparts  = @{$args{body}{parts} || []};
    my $w = $self->schemas->writer('env12:Fault'
      , include_namespaces => sub {$_[0] ne SOAP11ENV && $_[2]}
      );
    push @bparts,
      { name    => 'Fault'
      , element => pack_type(SOAP11ENV, 'Fault')
      , writer  => $w
      };
    local $args{body}{parts} = \@bparts;

 -Option        --Defined in        --Default
  body            XML::Compile::SOAP  []
  destination     XML::Compile::SOAP  []
  faults          XML::Compile::SOAP  []
  header          XML::Compile::SOAP  undef
  mustUnderstand  XML::Compile::SOAP  []
  procedure       XML::Compile::SOAP  undef
  role            XML::Compile::SOAP  ULTIMATE
  roles           XML::Compile::SOAP  []
body => ENTRIES|HASH
destination => ARRAY-OF-PAIRS
faults => ENTRIES|HASH
header => ENTRIES|HASH
mustUnderstand => STRING|ARRAY-OF-STRING
procedure => TYPE
role => URI|ARRAY-OF-URI
roles => ARRAY-OF-URI
$obj->messageStructure(XML)
XML::Compile::SOAP12->messageStructure(XML)

See "Single message" in XML::Compile::SOAP

Helpers

See documentation in the base class.

Transcoding

See documentation in the base class.

$obj->replyMustUnderstandFault(TYPE)

See "Transcoding" in XML::Compile::SOAP

$obj->roleAbbreviation(URI)

See "Transcoding" in XML::Compile::SOAP

$obj->roleURI(URI|STRING)

See "Transcoding" in XML::Compile::SOAP

DETAILS

See documentation in the base class.

SEE ALSO

This module is part of XML-Compile-SOAP12 distribution version 3.00, built on January 06, 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 2009-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