Subject: | Deserialization on inherited types |
When having a type inherited from another type that is inhertied from
ComplexType then the parent (XML-)Elements are not serialized
e.g. see files in attachement plus following call:
my $CalendarCreateData =
CP_SharePoint::ChangeManagement::CalendarCreateData->new();
$CalendarCreateData->set_GroupID( 1000);
A die of $CalendarCreateData returns nothing but output of e.g.
$CalendarCreateData->get_GroupID shows that the value is set (1000).
For finding out which method are valid its shown
Can't locate object method "set_GsroupID" via package
"CP_SharePoint::ChangeManagement::CalendarCreateData".
Valid methods are:
at /usr/lib/perl5/site_perl/5.8.8/SOAP/WSDL/XSD/Typelib/ComplexType.pm
line 61
Thats why we think that parent attributes are all ignored, for method
output and for XML-Serialization.
The inheritance was generated automatically by wsdl2perl
---
Perl v5.8.8 built for x86_64-linux-thread-multi
Linux 2.6.18-92.1.1.el5 #1 SMP Thu May 22 09:01:47 EDT 2008 x86_64
x86_64 x86_64 GNU/Linux
Subject: | ItemCreateData.pm |
package CP_SharePoint::ChangeManagement::ItemCreateData;
use strict;
use warnings;
our $XML_ATTRIBUTE_CLASS;
undef $XML_ATTRIBUTE_CLASS;
sub __get_attr_class {
return $XML_ATTRIBUTE_CLASS;
}
use base qw(CP_SharePoint::ChangeManagement::ItemData);
use Class::Std::Fast::Storable constructor => 'none';
use base qw(SOAP::WSDL::XSD::Typelib::ComplexType);
Class::Std::initialize();
{ # BLOCK to scope variables
my %Folder_of :ATTR(:get<Folder>);
my %Author_of :ATTR(:get<Author>);
my %GroupID_of :ATTR(:get<GroupID>);
__PACKAGE__->_factory(
[ qw( Folder
Author
GroupID
) ],
{
'Folder' => \%Folder_of,
'Author' => \%Author_of,
'GroupID' => \%GroupID_of,
},
{
'Folder' => 'CP_SharePoint::ChangeManagement::Folders',
'Author' => 'CP_SharePoint::ChangeManagement::NUser',
'GroupID' => 'SOAP::WSDL::XSD::Typelib::Builtin::int',
},
{
'Folder' => 'Folder',
'Author' => 'Author',
'GroupID' => 'GroupID',
}
);
} # end BLOCK
1;
=pod
=head1 NAME
CP_SharePoint::ChangeManagement::ItemCreateData
=head1 DESCRIPTION
Perl data type class for the XML Schema defined complexType
ItemCreateData from the namespace http://tempuri2.org/.
=head2 PROPERTIES
The following properties may be accessed using get_PROPERTY / set_PROPERTY
methods:
=over
=item * Folder
=item * Author
=item * GroupID
=back
=head1 METHODS
=head2 new
Constructor. The following data structure may be passed to new():
{ # CP_SharePoint::ChangeManagement::ItemCreateData
Folder => { # CP_SharePoint::ChangeManagement::Folders
SubFolder => $some_value, # string
},
Author => { value => $some_value },
GroupID => $some_value, # int
},
=head1 AUTHOR
Generated by SOAP::WSDL
=cut
Subject: | ItemData.pm |
package CP_SharePoint::ChangeManagement::ItemData;
use strict;
use warnings;
our $XML_ATTRIBUTE_CLASS;
undef $XML_ATTRIBUTE_CLASS;
sub __get_attr_class {
return $XML_ATTRIBUTE_CLASS;
}
# There's no variety - empty complexType
use Class::Std::Fast::Storable constructor => 'none';
use base qw(SOAP::WSDL::XSD::Typelib::ComplexType);
__PACKAGE__->_factory();
1;
=pod
=head1 NAME
CP_SharePoint::ChangeManagement::ItemData
=head1 DESCRIPTION
Perl data type class for the XML Schema defined complexType
ItemData from the namespace http://tempuri2.org/.
=head2 PROPERTIES
The following properties may be accessed using get_PROPERTY / set_PROPERTY
methods:
=over
=back
=head1 METHODS
=head2 new
Constructor. The following data structure may be passed to new():
,
=head1 AUTHOR
Generated by SOAP::WSDL
=cut
Subject: | CalendarCreateData.pm |
package CP_SharePoint::ChangeManagement::CalendarCreateData;
use strict;
use warnings;
our $XML_ATTRIBUTE_CLASS;
undef $XML_ATTRIBUTE_CLASS;
sub __get_attr_class {
return $XML_ATTRIBUTE_CLASS;
}
use base qw(CP_SharePoint::ChangeManagement::ItemCreateData);
# There's no variety - empty complexType
use Class::Std::Fast::Storable constructor => 'none';
use base qw(SOAP::WSDL::XSD::Typelib::ComplexType);
__PACKAGE__->_factory();
1;
=pod
=head1 NAME
CP_SharePoint::ChangeManagement::CalendarCreateData
=head1 DESCRIPTION
Perl data type class for the XML Schema defined complexType
CalendarCreateData from the namespace http://tempuri2.org/.
=head2 PROPERTIES
The following properties may be accessed using get_PROPERTY / set_PROPERTY
methods:
=over
=back
=head1 METHODS
=head2 new
Constructor. The following data structure may be passed to new():
# No documentation generated for complexContent / extension yet
,
=head1 AUTHOR
Generated by SOAP::WSDL
=cut