Hello there,
I've got an ASP.NET web service which is providing access to several
functions exposed as web methods.
By wsdl2ruby.rb (the standard one distributed with Ruby 1.8.2) I've
created the Ruby wrappers to access these methods.
Everything seems to be working fine a part from methods which require
ArrayOfDouble to be passed as inputs for which I get the following
error message:
#<SOAP::Mapping::Object:0x2c2bba0>: Server was unable to process
request. --> Index was outside the bounds of the array.
(SOAP::FaultError)
The calling code is as follows:
--------------------------------------
...all arrays are initiated here...
barriers=[
-1.000000,
-1.000000,
1000.000000,
1000.000000,
1000.000000,
1.000000]
resets=[4,13,13]
correlations=[]
reductionCode=2000
extra=[
0.015000,
1.000000,
0.000000]
endpoint_url = 'http://10.243.0.112/qcalctoolboxws/pricer.asmx'
obj = PricerSoap.new(endpoint_url)
res = ''
mytest = FlexEquityPricing.new(atimespan, aforwarddiscountfactors,
adividend, avolatility, simulations, reductionCode, isForwardStart,
isPreCouponPeriod, isPayAtMaturity, sofar, capsandfloors, resets,
correlations, extra)
res = obj.flexEquityPricing(mytest).flexEquityPricing.double
--------------------------------------
The only noticeable difference between the SOAP request generated by
ruby and the one generated by other soap clients is that the array
elements are passed as <item>1.234</item> instead of
<double>1.234</double>.
What's wrong with it?
Ciao!!!
-- Marco --