为什么此代码会产生警告:使用未初始化的值

时间:2013-08-07 12:25:05

标签: perl soaplite

此代码:

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。

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

1 个答案:

答案 0 :(得分:0)

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

您最好的行动方针是查看第3396行,看看那里发生了什么。

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