2013-08-07 136 views
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目錄中的字符串EQ未初始化值$ NS的使用/perl5/SOAP/Lite.pm line 3396.

我應該怎樣做才能擺脫它,而不是禁止警告?

+0

您正在運行什麼版本的SOAP :: Lite? – AKHolland

+0

你可以在'SOAP :: Lite-> new(...);'之後放置斷點或打印語句嗎?我想知道這個警告是否發生在對象的構造上。 – marderh

回答

0

很可能是因爲SOAP :: Lite希望$ ns變量(一個XML名稱空間標識符)具有一個值,您尚未設置。

你最好的行動方式是看第3396行,看看那裏發生了什麼。

也許這是您的SOAP :: Lite版本中的錯誤。你有沒有檢查模塊的RT隊列?

相關問題