0

这段代码:

my $url = 'http://172.27.1.250:8080/X/services/XSOAP';
my $soap = SOAP::Lite->new( 
    service=> 'http://172.27.1.250:8080/X/services/XSOAP?wsdl', 
    proxy => $url
);
$soap->autotype(0)->readable(1);
$soap->ns('http://www.example.org/X/');

my $som =  $soap->call('serviceX', 
           SOAP::Data->name('serviceXRequest')->value($value));

产生以下警告

在 /home/user/perl5/lib/perl5/SOAP/Lite.pm 第 3396 行的字符串 eq 中使用未初始化的值 $ns。

我应该怎么做才能在不抑制警告的情况下摆脱它?

4

1 回答 1

0

可能是因为 SOAP::Lite 期望 $ns 变量(一个 XML 命名空间标识符)具有一个您尚未设置的值。

您最好的做法是查看第 3396 行,看看那里发生了什么。

也许这是您版本 SOAP::Lite 中的错误。你检查模块的 RT 队列了吗?

于 2013-08-07T14:46:40.073 回答