HI!

If I am not using a proxy and I use call.setProperty(Call.SEND_TYPE_ATTR, 
Boolean.FALSE) then Axis sends the parameters untyped like this:
  <parameterTest soapenv:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/";>
   <arg0>1</arg0>
   <arg1>2</arg1>
   <arg2>3.5</arg2>
   <arg3>Test</arg3>
   <arg4>true</arg4>
  </parameterTest>


So far, so good. But how about arrays? If I have a primitive array as parameter, Axis 
always does typing like this:
  <arrayTest soapenv:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/";>
   <arg0 soapenc:arrayType="xsd:string[3]" 
xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/";>
    <item>1</item>
    <item>2</item>
    <item>3</item>
   </arg0>
  </arrayTest>

Or like this:
  <arrayTest soapenv:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/";>
   <arg0 soapenc:arrayType="xsd:anyType[3]" 
xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/";>
    <item xsi:type="xsd:string">1</item>
    <item xsi:type="xsd:string">2</item>
    <item xsi:type="xsd:string">3</item>
   </arg0>
  </arrayTest>

I have tried:
    call.invoke(new String[]{"1", "2", "3.5", "Test", "true"});
and
    call.invoke(new Object[]{new Object[]{"1", "2", "3"}});


Is there a way to send arrays completely untyped, too? So that the server converts it 
to the correct type?

Thanks!

Regards,
Thomas

Reply via email to