Did you ever get an answer to your question ? I am experiencing a similar issue in trying to use wsdl2perl.pl with amazon s3 service.:
wsdl2perl.pl -t AWS -e S3 -m S3 -i S3 http://doc.s3.amazonaws.com/2006
+-03-01/AmazonS3.wsdl
gives me the following error:
Creating typemap class S3/AmazonS3.pm
Creating interface class S3/AmazonS3/AmazonS3.pm
Use of uninitialized value in concatenation (.) or string at /Library/
+Perl/5.8.8/SOAP/WSDL/Generator/Template/Plugin/XSD.pm line 55.
/Library/Perl/5.8.8/SOAP/WSDL/Generator/Template/XSD\Interface.tt unde
+f error - no node at /Library/Perl/5.8.8/SOAP/WSDL/Generator/Templat
+e/Plugin/XSD.pm line 55
SOAP::WSDL::Generator::Template::Plugin::XSD::create_xsd_name('SOA
+P::WSDL::Generator::Template::Plugin::XSD=SCALAR(0xac1284)', 'undef')
+ called at (eval 3135) line 46
eval 'package Template::Perl;
my $item = $stash->{ item };
my $def = $stash->{ definitions };
my $part_from = $stash->{ message }->get_part();
my @body_part_from = split m{\\s}, $item->get_parts;
my @parts;
if (@body_part_from) {
@parts = map {
my $part = $_;
(grep {
# my ($ns, $lname) = $def->expand( $_ );
($_ eq $part->get_name)
} @body_part_from
)
? do {
my $name;
($name = $part->get_element)
? do {
my $element = $def->first_types->find_element(
+$part->expand($name));
my $resolver = $context->plugin(\'XSD\');
$resolver->create_xsd_name($element);
}
: ($name = $part->get_type)
? do {
my $element = $def->first_types->find_type
+($part->expand($name));
my $resolver = $context->plugin(\'XSD\');
$resolver->create_xsd_name($element);
}
: die "input must have either type or element"
}
: ()
} @{ $part_from };
}
else {
@parts = map {
my $part = $_;
my $name;
($name = $part->get_element)
? do {
my $element = $def->first_types->find_element($par
+t->expand($name));
my $resolver = $context->plugin(\'XSD\');
$resolver->create_xsd_name($element);
}
: ($name = $part->get_type)
? do {
my $element = $def->first_types->find_type
+($part->expand($name));
my $resolver = $context->plugin(\'XSD\');
$resolver->create_xsd_name($element);
}
: die "input must have either type or element";
} @{ $part_from };
}
warn "Multiple parts detected in message " . $stash->{ message }->
+get_name() . ".\\n",
"WS-I BP demands 0 to 1 parts in message body\\n"
if (@parts > 1);
$stash->{ parts } = \\@parts;
;' called at /Library/Perl/5.8.8/SOAP/WSDL/Generator/Template/XSD/Inte
+rface/Body.tt line 85
eval {...} called at /Library/Perl/5.8.8/SOAP/WSDL/Generator/Templ
+ate/XSD/Interface/Body.tt line 7
Template::Document::__ANON__('Template::Context=HASH(0xa2ab94)') c
+alled at /Library/Perl/5.8.8/darwin-thread-multi-2level/Template/Docu
+ment.pm line 151
eval {...} called at /Library/Perl/5.8.8/darwin-thread-multi-2leve
+l/Template/Document.pm line 149
Template::Document::process('Template::Document=HASH(0xa60404)', '
+Template::Context=HASH(0xa2ab94)') called at /Library/Perl/5.8.8/darw
+in-thread-multi-2level/Template/Context.pm line 341
eval {...} called at /Library/Perl/5.8.8/darwin-thread-multi-2leve
+l/Template/Context.pm line 315
Template::Context::process('Template::Context=HASH(0xa2ab94)', 'In
+terface/Body.tt', 'HASH(0xab2ba8)', 'localize me!') called at /Librar
+y/Perl/5.8.8/darwin-thread-multi-2level/Template/Context.pm line 403
Template::Context::include('Template::Context=HASH(0xa2ab94)', 'In
+terface/Body.tt', 'HASH(0xab2ba8)') called at /Library/Perl/5.8.8/SOA
+P/WSDL/Generator/Template/XSD/Interface/Operation.tt line 14
eval {...} called at /Library/Perl/5.8.8/SOAP/WSDL/Generator/Templ
+ate/XSD/Interface/Operation.tt line 7
Template::Document::__ANON__('Template::Context=HASH(0xa2ab94)') c
+alled at /Library/Perl/5.8.8/darwin-thread-multi-2level/Template/Docu
+ment.pm line 151
eval {...} called at /Library/Perl/5.8.8/darwin-thread-multi-2leve
+l/Template/Document.pm line 149
Template::Document::process('Template::Document=HASH(0xab313c)', '
+Template::Context=HASH(0xa2ab94)') called at /Library/Perl/5.8.8/darw
+in-thread-multi-2level/Template/Context.pm line 341
eval {...} called at /Library/Perl/5.8.8/darwin-thread-multi-2leve
+l/Template/Context.pm line 315
Template::Context::process('Template::Context=HASH(0xa2ab94)', 'In
+terface/Operation.tt', 'undef', 'localize me!') called at /Library/Pe
+rl/5.8.8/darwin-thread-multi-2level/Template/Context.pm line 403
Template::Context::include('Template::Context=HASH(0xa2ab94)', 'In
+terface/Operation.tt') called at /Library/Perl/5.8.8/SOAP/WSDL/Genera
+tor/Template/XSD/Interface.tt line 24
eval {...} called at /Library/Perl/5.8.8/SOAP/WSDL/Generator/Templ
+ate/XSD/Interface.tt line 28
eval {...} called at /Library/Perl/5.8.8/SOAP/WSDL/Generator/Templ
+ate/XSD/Interface.tt line 7
Template::Document::__ANON__('Template::Context=HASH(0xa2ab94)') c
+alled at /Library/Perl/5.8.8/darwin-thread-multi-2level/Template/Docu
+ment.pm line 151
eval {...} called at /Library/Perl/5.8.8/darwin-thread-multi-2leve
+l/Template/Document.pm line 149
Template::Document::process('Template::Document=HASH(0xab74d0)', '
+Template::Context=HASH(0xa2ab94)') called at /Library/Perl/5.8.8/darw
+in-thread-multi-2level/Template/Context.pm line 341
eval {...} called at /Library/Perl/5.8.8/darwin-thread-multi-2leve
+l/Template/Context.pm line 315
Template::Context::process('Template::Context=HASH(0xa2ab94)', 'Te
+mplate::Document=HASH(0xab74d0)') called at /Library/Perl/5.8.8/darwi
+n-thread-multi-2level/Template/Service.pm line 91
eval {...} called at /Library/Perl/5.8.8/darwin-thread-multi-2leve
+l/Template/Service.pm line 88
Template::Service::process('Template::Service=HASH(0x7b87c)', 'Int
+erface.tt', 'HASH(0xac0d58)') called at /Library/Perl/5.8.8/darwin-th
+read-multi-2level/Template.pm line 64
Template::process('Template=HASH(0xa2a8a0)', 'Interface.tt', 'HASH
+(0xac0d58)', 'S3/AmazonS3/AmazonS3.pm') called at /Library/Perl/5.8.8
+/SOAP/WSDL/Generator/Template.pm line 66
SOAP::WSDL::Generator::Template::_process('SOAP::WSDL::Generator::
+Template::XSD=SCALAR(0xa28ce4)', 'Interface.tt', 'HASH(0xa2aff0)', 'S
+3/AmazonS3/AmazonS3.pm', 'binmode', ':utf8') called at /Library/Perl/
+5.8.8/SOAP/WSDL/Generator/Template/XSD.pm line 122
SOAP::WSDL::Generator::Template::XSD::_generate_interface('SOAP::W
+SDL::Generator::Template::XSD=SCALAR(0xa28ce4)', 'HASH(0xa2ab7c)') ca
+lled at /Library/Perl/5.8.8/SOAP/WSDL/Generator/Template/XSD.pm line
+140
SOAP::WSDL::Generator::Template::XSD::generate_client('SOAP::WSDL:
+:Generator::Template::XSD=SCALAR(0xa28ce4)') called at /usr/local/bin
+/wsdl2perl.pl line 137
at /usr/local/bin/wsdl2perl.pl line 137