Barry
At 16:22 03/07/2003, you wrote:
You are not missing something. If SOAP::Lite returns different data structures identified by a single xsi:type, you do need to change your deserializer mapping for each call, or use some sort of generic de-serializer, like the PropertyBagSerializer (http://cvs.apache.org/viewcvs.cgi/xml- soap/java/src/org/apache/soap/encoding/soapenc/PropertyBagSerializer.j ava) that is in the Apache SOAP nightly builds. The description of this is
>>> Add a serializer (PropertyBagSerializer) that can read SOAP compound types into a Hashtable where the element names are the keys and the element contents are the values, which means beans do not have to be created for each compound type being deserialized. Conversely, it can write a Map similary, providing an alternative to the default Apache SOAP serialization of Maps. <<<
On 3 Jul 2003 at 14:45, Barry White wrote:
> Hi folks,
>
> I'm quite new to SOAP and web services. I've written a client in Apache
> SOAP and I'm having some problems with the responses from a SOAP::Lite
> server. The response data structures are identified as
> {http://xml.apache.org/xml-soap}:SOAPStruct but they may be different data
> structures. As Apache SOAP uses this type to unmarshall the responses I'm
> having trouble telling it which deserializer to use.
>
> I've worked around it with a CallFactory that manipulates the mapping
> registry for each call preparing it for the expected response. But you know
> when things start getting messy and you think "Am I missing something here?".
>
> Could the web services have been implemented in a better way... or am I
> missing something!!
>
> I hope someone can give me advice on this.
>
> Regards,
> Barry
>
>
>
Scott Nichol
Do not reply directly to this e-mail address, as it is filtered to only receive e-mail from specific mailing lists.