Dear Mr/Ms,

 

I have a problem in using SOAP::Lite for my application. I would like to ask for your help.

I want to build a Perl Web Client consuming WSDL (resulted from Apache CFX Web Service).

The Web Service has a method called Test, which just returns the input. Both output and input are of type string.

Here is my expected XML output:

                                

EXPECTED OUTPUT:

 

<?xml version="1.0" encoding="UTF-8"?><SOAP-ENV:Envelope xmlns:xsi="http://www.w3.org/1999/XMLSchema-instance" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/1999/XMLSchema" SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"><SOAP-ENV:Body><Test xmlns="http://test.test.test">TEXT_APPEAR</Test></SOAP-ENV:Body></SOAP-ENV:Envelope>


SOAP::Transport::HTTP::Client::send_receive: HTTP/1.1 200 OK
Server: Jetty(6.1.6)
Content-Length: 206
Content-Type: text/xml
Client-Date: Wed, 11 Jun 2008 10:21:18 GMT
Client-Peer: 127.0.0.1:7650
SOAPAction: ""

 

I have tried following all the examples from the web but none of them can give me the expected output xml. They give one extra element nested around the input text. 

 

My Perl Code (version 1):

 

use SOAP::Lite + trace => 'debug';

my $svc;
my $resp;

 

eval
{

$svc= SOAP::Lite
    ->service("
http://localhost:8000/");
$resp = $svc->Test('TEXT_APPEAR');
}; 
die "Got Error: $@" if($@);

 

 

OUTPUT:

 

<?xml version="1.0" encoding="UTF-8"?><SOAP-ENV:Envelope xmlns:xsi="http://www.w3.org/1999/XMLSchema-instance" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/1999/XMLSchema" SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"><SOAP-ENV:Body><Test xmlns="http://test.test.test"><Test>TEXT_APPEAR</Test></Test></SOAP-ENV:Body></SOAP-ENV:Envelope>

 

SOAP::Transport::HTTP::Client::send_receive: HTTP/1.1 200 OK
Server: Jetty(6.1.6)
Content-Length: 206
Content-Type: text/xml
Client-Date: Wed, 11 Jun 2008 10:21:18 GMT
Client-Peer: 127.0.0.1:7650
SOAPAction: ""

 

 

My Perl Code (version 2):

 

use SOAP::Lite + trace => 'debug';

my $svc;
my $resp;

 

eval
{

 

$svc= SOAP::Lite
    ->service("
http://localhost:8000") 
    ->proxy("http://localhost);
$resp = $svc->call(SOAP::Data->name('Test')
       ->attr ({'xmlns'=>'http://sth.sth.sth'})
       => "TEXT_APPEAR");
}; 
die "Got Error: $@" if($@);

 

 

OUTPUT:

 

<?xml version="1.0" encoding="UTF-8"?><SOAP-ENV:Envelope xmlns:xsi="http://www.w3.org/1999/XMLSchema-instance" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/1999/XMLSchema" SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"><SOAP-ENV:Body><Test xmlns="http://test.test.test"><c-gensym3 xsi:type="xsd:int">TEXT_APPEAR</c-gensym3></Greeter></SOAP-ENV:Body></SOAP-ENV:Envelope>


SOAP::Transport::HTTP::Client::send_receive: HTTP/1.1 200 OK
Server: Jetty(6.1.6)
Content-Length: 272
Content-Type: text/xml; charset=utf-8
Client-Date: Wed, 11 Jun 2008 10:29:25 GMT
Client-Peer: 127.0.0.1:7650

 

Could you help me to solve this issue?

Looking forward to your reply, I really thank you very much for your kind attention.

 

Sincerely yours,

Yunika