On December 5, 2004 12:50 pm, Michael Schuerig wrote: > On Sunday 05 December 2004 21:37, Lyndon Tiu wrote: > > With doc/lit, we found that we need to pass data structures back and > > forth in String array form. We cannot pass anything more complex > > (like Hashmaps of Hashmaps or ArrayLists of custom objects). So if we > > need to pass complex data structures, we "serialize" it into a few > > arrays containing all the information in the complex data structure, > > then put it into a custom object containing just all arrays, then we > > "de-serialize" it back into the actual complex data structure on the > > other end. > > Does this result in sensible XML being transferred over the net? By that > I mostly mean XML that's not just usable between the two applications > you can control, but that makes interoperability possible. If not, you > might get cleaner results with custom de/serializers. >
In our case, we control both ends of the wire so our "object to array to object" code is a mirror - what one does the other undoes. But I also read that axis's complex data types are not compatible with .Net and the only sure way for interoperability are simple String arrays. I've worked on axis and .Net on either ends of the wire and it is almost easier to deal with raw XML directly rather than try to pass object back and forth cause web services is not as platform independent as it is marketed to be unfortunately. We would get weird errors and wsdl incompatibilities. -- Lyndon Tiu