2010-03-10 88 views
2

我是Perl新手。我正在關注生物信息學webapi,我試圖簡單地顯示存儲在$ result中的值。我的打印「$ result \ n」;命令似乎不起作用。這裏發生了什麼有什麼可能性?Perl中的SOAP :: Lite

# #!/usr/local/bin/perl 
use strict; 

# 1. include SOAP Lite 
use SOAP::Lite; 

# 2. specifies WSDL file 
my $service = SOAP::Lite -> service('http://xml.nig.ac.jp/wsdl/GetEntry.wsdl'); 

# 3. call SOAP service 
my $result = $service->getXML_DDBJEntry("AB000003"); 

print "$result\n"; 
+0

只是一個方面說明:XML ::編譯是很好的處理SOAP的東西。 – asjo

回答

3

我記得,$result是一個對象;請嘗試:

use Data::Dumper; 
print Dumper($result), "\n"; 

這可能會幫助您確定發生了什麼。

+0

$ VAR1 = undef;在終端中返回 –

+1

嘗試更改您的使用語句如下:'使用SOAP :: Lite + trace =>'debug';'。這可以讓你看到發送和接收的所有內容,這可能會告訴你哪裏出了問題。 –

0

打開從瀏覽器代碼的URL,並嘗試通過瀏覽器搜索功能查找「AB000003」。
對我來說,我找不到文字 - 因此empty/undef是邏輯結果。

+0

這個答案沒用。定義了一個'getXML_DDBJEntry'操作,並且無法從文檔中判斷「AB000003」是否是該操作的有效輸入。 – mob

+0

我的猜測是,AB000003是一個有效的輸入,但不會產生結果。否則,你應該在XML文件中找到字符串文字。 – weismat

+0

好吧 - 此鏈接顯示一般情況。 http://xml.nig.ac.jp/wabi/Method?&lang=en&serviceName=ARSA&methodName=searchByXMLPath&mode=methodDetail – weismat

相關問題