Beefy Boxes and Bandwidth Generously Provided by pair Networks
Keep It Simple, Stupid
 
PerlMonks  

Re^3: SOAP for Perl

by nite_man (Deacon)
on Aug 04, 2004 at 07:55 UTC ( #379923=note: print w/replies, xml ) Need Help??


in reply to Re^2: SOAP for Perl
in thread SOAP for Perl

You can create header and body using SOAP::Serializer and pass it using SOAP::Lite method on_action:

my $soapObj = SOAP::Lite -> uri('http://www.3gpp.org/ftp/Specs/archive/23_series/23.140/sch +ema/REL-5-MM7-1-2') -> on_action(sub { return SOAP::Serializer->envelope(method => 'MM +7Version', '5.3.0', SOAP::Header->name(TransactionID => 5) +->mustUnderstand(1) ); }) -> proxy('http://10.236.137.7:10021/vas_soap'); print $soapObj->result;
Result is:
<?xml version="1.0" encoding="UTF-8"?> <SOAP-ENV:Envelope xmlns:xsi="http://www.w3.org/1999/XMLSchema-instanc +e" 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:Header> <TransactionID SOAP-ENV:mustUnderstand="1" xsi:type="xsd:int">5</Trans +actionID> </SOAP-ENV:Header> <SOAP-ENV:Body> <MM7Version> <c-gensym5 xsi:type="xsd:string">5.3.0</c-gensym5></MM7Version> </SOAP-ENV:Body> </SOAP-ENV:Envelope>

---
Schiller

It's only my opinion and it doesn't have pretensions of absoluteness!

Hope it helps :)

Replies are listed 'Best First'.
Soap POST
by TomJones (Initiate) on Aug 05, 2004 at 12:47 UTC
    Hi Schiller, Thanks. One last question. When I submit a SOAP message encapsulated in a post operation how can I change the following headers SOAP::Transport::HTTP::Client::send_receive: POST http://10.236.137.7:10021/vas_soap HTTP/1.1 Accept: text/xml Accept: multipart/* Content-Length: 2810 Content-Type: text/xml to
    Content-Type multipart/related;boundary ="soap-border";type ="text/xml +"" start =Test Content-Length Authorization: Basic

      using the SOAP::Lite transport() method you can access the SOAP::Transport::HTTP and gain access to the HTTP::Request or HTTP::Response objects (that control the headers) via the request() and response() methods.

      /J\

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://379923]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others examining the Monastery: (5)
As of 2021-06-22 10:35 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?
    What does the "s" stand for in "perls"? (Whence perls)












    Results (102 votes). Check out past polls.

    Notices?