2011-09-27 5 views
0

나는 메시지를 반환하도록 SOAP을 얻으려고하고있다. 지금은 그냥 hello world를 반환한다.PERL로 문자열 반환하기

package RAM; 
sub ram { 
#!/usr/bin/perl 
use Sys::MemInfo qw(totalmem freemem totalswap); 

return SOAP::Data->name('result')->type('string')->value("hello world"); 
} 
1; 

나는 돌아 SOAP를 얻기 위해 노력하고 있어요 :

대신에 "Hello World"

어떤 도움의

print "free memory: ".(&freemem/1024)."\n"; 

을 감상 할 수있다 :)

+0

@ 브루스 감사합니다. 그러나 그것은 작동하지 않았습니다. e 동일한 오류 : SOAP :: Serializer :: envelope : 서버 사용법 : Sys :: MemInfo :: freemem() /etc/perl/RAM.pm 5 줄. –

+2

원래 질문에 오류가 언급되지 않았습니다. 오류가 발생하면 그 질문에 구체적으로 설명하십시오. 질문을 편집하여 문제에 대한 자세한 정보를 제공하는 것이 좋습니다. – Bruce

답변

1

을하는 방법에 대해 ....

my $string_to_return = "free memory: ".(&freemem/1024)."\n"; 
    return SOAP::Data->name('result')->type('string')->value($string_to_return); 
+0

죄송합니다, 같은 오류 메시지 : ( –

+0

질문에 내 의견을 참조하십시오 ...... – Bruce

+0

당신이 호출하는 서브 루틴에'@ _ '를 전달하지 않으려면 * 메서드 호출 앞에서 앰퍼샌드를 사용하는 나쁜 스타일 * 이것은 Perl 4 "Cargo Cult"입니다. – Axeman