SOAP::...er::SOM(3pm)
π SOAP::WSDL::Deserializer::SOM π
okay so bestie, welcome to the manual page for SOAP::WSDL::Deserializer::SOM β which lives in the User Contributed Perl Documentation section, if you're the kind of person who reads section 3pm pages for fun (respect, honestly π
). It turns SOAP messages into SOM objects. Let's get into it π¦
β¨ NAME β¨
SOAP::WSDL::Deserializer::SOM β it's a deserializer, and its whole job is turning SOAP messages into SOM objects. That's the vibe. π
πΈ SYNOPSIS πΈ
use SOAP::WSDL;
use SOAP::WSDL::Deserializer::SOM;
use SOAP::WSDL::Factory::Deserializer;
SOAP::WSDL::Factory::Deserializer->register( '1.1', __PACKAGE__ );
π¦ DESCRIPTION π¦
So this is a deserializer for creating SOAP::Lite's SOM object as the result of a SOAP call. That's the whole point of it. β¨
This package exists for two reasons, and honestly both are so valid:
- Compatibility β you don't have to go rewriting the rest of your SOAP::Lite-based app when you switch over to SOAP::WSDL. Just use
SOAP::WSDL::Deserializer::SOMand you get back the same objects you were already used to. no notes, iconic behaviour. π - Completeness β SOAP::Lite covers a lot more of the SOAP specification than SOAP::WSDL does. So
SOAP::WSDL::Deserializer::SOMcan be used for content thatSOAP::WSDL::Deserializer::SOAP11just cannot deserialize. We're talking XML with mixed content, attachements, and other XML data that isn't (yet π) handled bySOAP::WSDL::Deserializer::SOAP11.
Also, important lore: SOAP::WSDL::Deserializer::SOM is a subclass of SOAP::Deserializer from the SOAP::Lite package. Periodt. π
π METHODS π
deserialize
Deserializes a XML sting into a SOAP::SOM object. And if things go sideways during deserialization? It returns a SOAP::Fault object. π
generate_fault
Dies with a SOAP::Fault object. That's it, that's the method. dramatic? yes. correct? also yes. π
π USAGE π
Bestie, heads up: SOAP::WSDL::Deserializer will not autoregister itself. So if you want it for one specific SOAP version, you gotta do it yourself with these lines:
my $soap_version = '1.1'; # or '1.2', further versions may appear.
use SOAP::WSDL::Deserializer::SOM;
use SOAP::WSDL::Factory::Deserializer;
SOAP::WSDL::Factory::Deserializer->register( $soap_version, __PACKAGE__ );
Look at you registering your own deserializer. main character energy, honestly. π«Ά
π§ DIFFERENCES FROM OTHER CLASSES π§
Differences from SOAP::Lite
- No
on_faulthandler β you can't specify what to do when an error occurs (sorry π). SOAP::WSDL will return aSOAP::Faultobject on transport errors instead, whether you asked for it or not.
Differences from other SOAP::WSDL::Deserializer classes
generate_faultβSOAP::WSDL::Deserializer::SOMwill die with aSOAP::Faultobject on calls togenerate_fault. π
And this also means that a SOAP::Fault may be thrown as exception when using
fr fr that's where the original sentence ends, bestie. I'm not gonna invent the rest of it for you π
π LICENSE AND COPYRIGHT π
Copyright 2004-2007 Martin Kutter.
This file is part of SOAP-WSDL. You may distribute/modify it under the same terms as perl itself. πͺ
π AUTHOR π
Martin Kutter <martin.kutter fen-net.de>
β REPOSITORY INFORMATION β
$Rev: 851 $
$LastChangedBy: kutterma $
$Id: SOM.pm 851 2009-05-15 22:45:18Z kutterma $
$HeadURL: https://soap-wsdl.svn.sourceforge.net/svnroot/soap-wsdl/SOAP-WSDL/trunk/lib/SOAP/WSDL/Deserializer/SOM.pm $
and that's the whole page, bestie π this one came to you courtesy of perl v5.36.0, dated 2022-10-14, filed under SOAP::...er::SOM(3pm) β yes the title is literally abbreviated like that, we love a cryptic queen πΈ slay, go deserialize something β¨
π¦ where this page comes from
- ubuntu noble: libsoap-wsdl-perl 3.004-2 Β· Artistic-1.0-Perl OR GPL-1.0-or-later
- ubuntu resolute: libsoap-wsdl-perl 3.004-2 Β· Artistic-1.0-Perl OR GPL-1.0-or-later
- ubuntu stonking: libsoap-wsdl-perl 3.004-2 Β· Artistic-1.0-Perl OR GPL-1.0-or-later
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms