Asp Forum
Home
|
Login
|
Register
|
Search
Forums
>
comp.lang.ruby
accessing SOAP::Mapping::Object
Ruby Rookie
8/13/2007 8:14:00 PM
Hi,
I just started with SOAP and Ruby and after one day trying to get it
working I'am now stuck at getting the response into useable variables
i.e. accessing the SOAP::Mapping::Object.
I used soap4r and wdsl2ruby for generating the client code
The bare SOAP XML result is:
<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:soap="
http://schemas.xmlsoap.org/soap/envel...
xmlns:xsi="
http://www.w3.org/2001/XMLSchema-inst...
xmlns:xsd="
http://www.w3.org/2001/XMLSchema...
<soap:Body><FetchKnownUnitsResponse xmlns="
http://support.so...
:
2332/">
<FetchKnownUnitsResult>
<Units xmlns="">
<Unit>
<Id>EF000000AC023F28</Id><LastConnect>2007-07-24 19:08:58</
LastConnect>
<LastClear>2007-07-23 10:34:48</LastClear>
<LastDisconnect>2007-07-24 15:51:34</LastDisconnect>
<LastRTCValue>2007-07-24 20:31:31</LastRTCValue>
<LastLogStart>2007-07-23 10:05:14</LastLogStart>
<LastLocalTime>2007-07-24 19:09:03</LastLocalTime>
<LastRecordCount>27</LastRecordCount>
<LastVersion>0</LastVersion>
<LastRevision>23</LastRevision>
<LastErrorStatus>0</LastErrorStatus>
</Unit>
</Units>
</FetchKnownUnitsResult>
</FetchKnownUnitsResponse>
</soap:Body>
</soap:Envelope>
In ruby
--- begin ruby code ------
#!/usr/bin/env ruby -d
# issue the command to the server
endpoint_url = ARGV.shift
obj = DefaultSoap.new(endpoint_url)
# run ruby with -d to see SOAP wiredumps.
obj.wiredump_dev = STDERR if $DEBUG
#
SoapResponse = obj.fetchKnownUnits(:username => 'Me', :challenge =>
'Secret')
pp SoapResponse
----- end ruby code ----
The result on screen is:
#<FetchKnownUnitsResponse:0x102389c
@fetchKnownUnitsResult=
#<SOAP::Mapping::Object:0x8119ce {}Units=#<SOAP::Mapping::Object:
0x81191a {}Unit=#<SOAP::Mapping::Object:0x811802
{}Id="EF000000AC023F28" {}LastConnect="2007-07-24
19:08:58" {}LastClear="2007-07-23
10:34:48" {}LastDisconnect="2007-07-24
15:51:34" {}LastRTCValue="2007-07-24
20:31:31" {}LastLogStart="2007-07-23
10:05:14" {}LastLocalTime="2007-07-24
19:09:03" {}LastRecordCount="27" {}LastVersion="0" {}LastRevision="23" {}LastErrorStatus="0">>>>
Can someone please give the code to capture the value foe the unit Id
into a variable.
I expected it to be something like:
my_unit_id = SoapResponse['fetchKnownUnitsResult']['Units'][0]['Id']
Thanx
Patrick
2 Answers
Dejan Dimic
8/13/2007 8:31:00 PM
0
On Aug 13, 10:14 pm, Ruby Rookie <patrick.hoogend...@gmail.com> wrote:
> Hi,
>
> I just started with SOAP and Ruby and after one day trying to get it
> working I'am now stuck at getting the response into useable variables
> i.e. accessing the SOAP::Mapping::Object.
> I used soap4r and wdsl2ruby for generating the client code
>
> The bare SOAP XML result is:
> <?xml version="1.0" encoding="utf-8"?>
> <soap:Envelope xmlns:soap="
http://schemas.xmlsoap.org/soap/envel...
> xmlns:xsi="
http://www.w3.org/2001/XMLSchema-inst...
> xmlns:xsd="
http://www.w3.org/2001/XMLSchema...
> <soap:Body><FetchKnownUnitsResponse xmlns="
http://support.so...
:
> 2332/">
> <FetchKnownUnitsResult>
> <Units xmlns="">
> <Unit>
> <Id>EF000000AC023F28</Id><LastConnect>2007-07-24 19:08:58</
> LastConnect>
> <LastClear>2007-07-23 10:34:48</LastClear>
> <LastDisconnect>2007-07-24 15:51:34</LastDisconnect>
> <LastRTCValue>2007-07-24 20:31:31</LastRTCValue>
> <LastLogStart>2007-07-23 10:05:14</LastLogStart>
> <LastLocalTime>2007-07-24 19:09:03</LastLocalTime>
> <LastRecordCount>27</LastRecordCount>
> <LastVersion>0</LastVersion>
> <LastRevision>23</LastRevision>
> <LastErrorStatus>0</LastErrorStatus>
> </Unit>
> </Units>
> </FetchKnownUnitsResult>
> </FetchKnownUnitsResponse>
> </soap:Body>
> </soap:Envelope>
>
> In ruby
> --- begin ruby code ------
> #!/usr/bin/env ruby -d
> # issue the command to the server
> endpoint_url = ARGV.shift
> obj = DefaultSoap.new(endpoint_url)
>
> # run ruby with -d to see SOAP wiredumps.
> obj.wiredump_dev = STDERR if $DEBUG
> #
> SoapResponse = obj.fetchKnownUnits(:username => 'Me', :challenge =>
> 'Secret')
>
> pp SoapResponse
>
> ----- end ruby code ----
>
> The result on screen is:
>
> #<FetchKnownUnitsResponse:0x102389c
> @fetchKnownUnitsResult=
> #<SOAP::Mapping::Object:0x8119ce {}Units=#<SOAP::Mapping::Object:
> 0x81191a {}Unit=#<SOAP::Mapping::Object:0x811802
> {}Id="EF000000AC023F28" {}LastConnect="2007-07-24
> 19:08:58" {}LastClear="2007-07-23
> 10:34:48" {}LastDisconnect="2007-07-24
> 15:51:34" {}LastRTCValue="2007-07-24
> 20:31:31" {}LastLogStart="2007-07-23
> 10:05:14" {}LastLocalTime="2007-07-24
> 19:09:03" {}LastRecordCount="27" {}LastVersion="0" {}LastRevision="23" {}LastErrorStatus="0">>>>
>
> Can someone please give the code to capture the value foe the unit Id
> into a variable.
>
> I expected it to be something like:
> my_unit_id = SoapResponse['fetchKnownUnitsResult']['Units'][0]['Id']
>
> Thanx
>
> Patrick
You should send your question to
http://groups.google.com/gr...
Ruby Rookie
8/14/2007 8:19:00 AM
0
On 13 aug, 22:30, dima <dejan.di...@gmail.com> wrote:
> On Aug 13, 10:14 pm, Ruby Rookie <patrick.hoogend...@gmail.com> wrote:
>
>
>
> > Hi,
>
> > I just started with SOAP and Ruby and after one day trying to get it
> > working I'am now stuck at getting the response into useable variables
> > i.e. accessing the SOAP::Mapping::Object.
> > I used soap4r and wdsl2ruby for generating the client code
>
> > The bare SOAP XML result is:
> > <?xml version="1.0" encoding="utf-8"?>
> > <soap:Envelope xmlns:soap="
http://schemas.xmlsoap.org/soap/envel...
> > xmlns:xsi="
http://www.w3.org/2001/XMLSchema-inst...
> > xmlns:xsd="
http://www.w3.org/2001/XMLSchema...
> > <soap:Body><FetchKnownUnitsResponse xmlns="
http://support.so...
:
> > 2332/">
> > <FetchKnownUnitsResult>
> > <Units xmlns="">
> > <Unit>
> > <Id>EF000000AC023F28</Id><LastConnect>2007-07-24 19:08:58</
> > LastConnect>
> > <LastClear>2007-07-23 10:34:48</LastClear>
> > <LastDisconnect>2007-07-24 15:51:34</LastDisconnect>
> > <LastRTCValue>2007-07-24 20:31:31</LastRTCValue>
> > <LastLogStart>2007-07-23 10:05:14</LastLogStart>
> > <LastLocalTime>2007-07-24 19:09:03</LastLocalTime>
> > <LastRecordCount>27</LastRecordCount>
> > <LastVersion>0</LastVersion>
> > <LastRevision>23</LastRevision>
> > <LastErrorStatus>0</LastErrorStatus>
> > </Unit>
> > </Units>
> > </FetchKnownUnitsResult>
> > </FetchKnownUnitsResponse>
> > </soap:Body>
> > </soap:Envelope>
>
> > In ruby
> > --- begin ruby code ------
> > #!/usr/bin/env ruby -d
> > # issue the command to the server
> > endpoint_url = ARGV.shift
> > obj = DefaultSoap.new(endpoint_url)
>
> > # run ruby with -d to see SOAP wiredumps.
> > obj.wiredump_dev = STDERR if $DEBUG
> > #
> > SoapResponse = obj.fetchKnownUnits(:username => 'Me', :challenge =>
> > 'Secret')
>
> > pp SoapResponse
>
> > ----- end ruby code ----
>
> > The result on screen is:
>
> > #<FetchKnownUnitsResponse:0x102389c
> > @fetchKnownUnitsResult=
> > #<SOAP::Mapping::Object:0x8119ce {}Units=#<SOAP::Mapping::Object:
> > 0x81191a {}Unit=#<SOAP::Mapping::Object:0x811802
> > {}Id="EF000000AC023F28" {}LastConnect="2007-07-24
> > 19:08:58" {}LastClear="2007-07-23
> > 10:34:48" {}LastDisconnect="2007-07-24
> > 15:51:34" {}LastRTCValue="2007-07-24
> > 20:31:31" {}LastLogStart="2007-07-23
> > 10:05:14" {}LastLocalTime="2007-07-24
> > 19:09:03" {}LastRecordCount="27" {}LastVersion="0" {}LastRevision="23" {}LastErrorStatus="0">>>>
>
> > Can someone please give the code to capture the value foe the unit Id
> > into a variable.
>
> > I expected it to be something like:
> > my_unit_id = SoapResponse['fetchKnownUnitsResult']['Units'][0]['Id']
>
> > Thanx
>
> > Patrick
>
> You should send your question to
http://groups.google.com/gr...
I just did, thank you
Servizio di avviso nuovi messaggi
Ricevi direttamente nella tua mail i nuovi messaggi per
accessing SOAP::Mapping::Object
Inserendo la tua e-mail nella casella sotto, riceverai un avviso tramite posta elettronica ogni volta che il motore di ricerca troverà un nuovo messaggio per te
Il servizio è completamente GRATUITO!
x
Login to ForumsZone
Login with Google
Login with E-Mail & Password