Soap4r attributes vs elements


#1

Hi list,

soap4r is great when it comes to creating requests consisting of
elements

require ‘soap/wsdlDriver’
driver = SOAP::WSDLDriverFactory.new(wsdlURL).create_rpc_driver
driver.getSomething(:foo=>“bar”)

I have a third-party web service utilising attributes of the request
object, rather than nested elements.

soap4r is generating this:

What I’m after is this:

the web service doesn’t accept this:

bar

Is there any means of achieving this with soap4r?

Thanks,
Roy.


#2

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Hi,

Sorry for the late response.

Roy Britten wrote:

I have a third-party web service utilising attributes of the request
object, rather than nested elements.

What I’m after is this:

Is there any means of achieving this with soap4r?

You need to construct SOAP element object.

ele = SOAP::SOAPElement.new(“name”)
ele.extraattr[“foo”] = “bar”
driver.invoke(ele)

Regards,
// NaHi

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.5 (Cygwin)

iQEVAwUBRma+ax9L2jg5EEGlAQIzKQgAv9Ffq4Ny+zpZ0kxfT/2cCpKJWxFY4msd
QxEahJ5dWDtRYUkIoUGu7sZ1LwDAZ8NyznkjctH14wjih42YDf5vOKyzC6fr+jak
KKfXFMGmSGlAHD9zfsmIixdIqx8F2eh8E0zwMSv/JUgECw9/5/f9ZPPeEDT5No7B
jjmgmK8diVS+jzOix5dyZSsIFPAprxS06VOQrD5qs91ijQhoWx63odml0CamGiWv
Xf0zex3VTBybQ6xufpeNaDAYRX9EPFNHjJBEYYLc4plPoWGHLC2soUdwUSyL5fIg
LHzlwP9V28Qnnkjk1VquryOsOP01Sn6x/jXiK61MZEPG1DTJYX4OAA==
=kept
-----END PGP SIGNATURE-----


#3

On 07/06/07, NAKAMURA, Hiroshi removed_email_address@domain.invalid wrote:

You need to construct SOAP element object.

ele = SOAP::SOAPElement.new(“name”)
ele.extraattr[“foo”] = “bar”
driver.invoke(ele)

Many thanks. That’ll make life easier.

Cheers,
Roy.