Thanks William. I tried your suggestion about just sending it as 1D but the server code rejected it.
I'll spend a little time looking at custom serialization. And the server side guys are trying to see if they can handle an array of arrays. - Mark --- "Zwicky, William R ERDC-CERL-IL Contractor" <[EMAIL PROTECTED]> wrote: > I haven't done any type mangling myself, but the body of example 2 is a > one-dimensional array. To send that, copy your data into an anytype[6] > array. Unfortunately, I suspect the type attribute will change to > 'soapenc:arrayType="xsd:anyType[6]"'. I don't know what to do about that; > your server might not care, or maybe you can fake it by telling Axis what > string to put there. > > -Bill > > // William R. Zwicky > // USA-CERL (217) 352-6511 x7405 > // Champaign, IL > > > > > -----Original Message----- > > From: Mark Cassidy [mailto:[EMAIL PROTECTED] > > Sent: Thursday, August 19, 2004 3:29 PM > > To: [EMAIL PROTECTED] > > Subject: serializing 2D arrays > > > > We're using Axis 1.1 for our JAX-RPC client to a set of > > webservices. We're getting back 2D arrays fine from the > > service, but sending a 2D array is having problems over on > > the web service side. > > > > The WSDL only says that the message part that is the 2D array > > is xsd:anyType -- and they're not going to change it. > > > > Here is an example of how our client is serializing the 2D > > array going out from Axis - > > > > <avarLineItem > > xsi:type="soapenc:Array" > > soapenc:arrayType="xsd:anyType[][2]" > > > > xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/"> > > <item xsi:type="soapenc:Array" soapenc:arrayType="xsd:anyType[3]"> > > <item xsi:type="xsd:string">1</item> > > <item xsi:type="xsd:string">2</item> > > <item xsi:type="xsd:string">3</item> > > </item> > > <item xsi:type="soapenc:Array" soapenc:arrayType="xsd:anyType[3]"> > > <item xsi:type="xsd:string">4</item> > > <item xsi:type="xsd:string">5</item> > > <item xsi:type="xsd:string">6</item> > > </item> > > </avarLineItem> > > > > > > But the webservice is looking for something like this - > > > > > > <avarLineItem > > xsi:type="soapenc:Array" > > soapenc:arrayType="xsd:anyType[2][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> > > <item xsi:type="xsd:string">4</item> > > <item xsi:type="xsd:string">5</item> > > <item xsi:type="xsd:string">6</item> > > </avarLineItem> > > > > I have tried creating it in Java as Object[][], Object[] with > > ArrayLists inside it, but can't get the object such that Axis > > serializes it as in example two. I understand that because > > 2D arrays in Java can be ragged, this may not be the natural > > way they get represented with Axis' serialization. But can > > anyone provide advice of how to do get it serialized as in > > example 2? Do I have to write a custom serializer to do this? > > > > Thanks for any help, > > - Mark > > > > >
