Actionwebservice: order of parameters in SOAP message


#1

Hi,

I have a strange SOAP interopability issue with
actionwebservice/rails2.0 (server) and Axis2 (client)

Should the order of parameters in a SOAP request matter? I.e is…

soapenv:Body
<ns1:someMethod xmlns:ns1=“http://xmlns.tre.se/bss/AAAService”>

Foo

false
</ns1:Update>
</soapenv:Body>

… as valid as:

soapenv:Body
<ns1:someMethod xmlns:ns1=“http://xmlns.tre.se/bss/AAAService”>
false

Foo

</ns1:Update>
</soapenv:Body>

(In the first request snippet, the complex object is sent before the
boolean)

The API classfile contains:

api_method :someMethod, :expects => [ {:myComplex => MyComplex},
{:aBoolean => :boolean} ],
:returns => [ ResponseMsg ]

And the generated WSDL:

<xsd:complexType name=“MyComplex”>
xsd:all
<xsd:element name=“theA” type=“xsd:string”/>
</xsd:all>
</xsd:complexType>





#2

Minor typo above, the requests should of course be:

soapenv:Body
<ns1:someMethod xmlns:ns1=“http://xmlns.tre.se/bss/AAAService”>

Foo

false
</ns1:someMethod>
</soapenv:Body>

and:

soapenv:Body
<ns1:someMethod xmlns:ns1=“http://xmlns.tre.se/bss/AAAService”>
false

Foo

</ns1:someMethod>
</soapenv:Body>