I think I'm about one day ahead of you with regards to Axis 1.4. I think you
need to register the type mapping for anyType. At least, I did that for my
complex types, and it resolved this issue. Here's an example:
QName qnNotification = new QName("urn:itracker", "notification");
call.registerTypeMapping(NotificationModel.class, qnNotification, new
org.apache.axis.encoding.ser.BeanSerializerFactory(NotificationModel.class,
qnNotification), new
org.apache.axis.encoding.ser.BeanDeserializerFactory(NotificationModel.class,
qnNotification));
Lindsey
Steven Peterson <[EMAIL PROTECTED]> wrote:
Hi,
Please save me from myself. I am writing an Axis 1.4 client that is
consuming an existing RPC-encoded service. After creating the client
using WSDL2java and running a test, the request goes through and the
service responds correctly, but when deserializing the response, the
client gives the error:
{http://xml.apache.org/axis/}stackTrace:org.xml.sax.SAXException: No
deserializer for {http://www.w3.org/2001/XMLSchema}anyType
at
org.apache.axis.encoding.DeserializerImpl.onStartElement(DeserializerImpl.java:453)
at
org.apache.axis.encoding.DeserializerImpl.startElement(DeserializerImpl.java:393)
at
org.apache.axis.encoding.DeserializationContext.startElement(DeserializationContext.java:1048)
at
org.apache.axis.message.SAX2EventRecorder.replay(SAX2EventRecorder.java:165)
at
org.apache.axis.message.MessageElement.publishToHandler(MessageElement.java:1141)
at org.apache.axis.message.RPCElement.deserialize(RPCElement.java:345)
at org.apache.axis.message.RPCElement.getParams(RPCElement.java:384)
at org.apache.axis.client.Call.invoke(Call.java:2467)
at org.apache.axis.client.Call.invoke(Call.java:2366)
at org.apache.axis.client.Call.invoke(Call.java:1812)
When I looked at the request/response using tcpmon, the body of the
response was:
xsi:type="soapenc:Array">
xsi:type="xsd:string">http://www.google.com
xsi:type="xsd:string">[EMAIL PROTECTED]
This is a test
list
I have tried adding the following beanMapping in client-config.wsdd in
an attempt to force using the deserializer to use the ListType class,
generated by WSDL2java, but this seems to have no effect:
xmlns:ns="http://www.w3.org/2001/XMLSchema"
qname="ns:anyType"
languageSpecificType="java:com.listpilot.sympasoap.ListType"
/>
I am not sure where to begin.
o Is there an easy way to deserialize this output?
o If I could get the raw response XML or a DOM document, then I could
deserialize it myself; is there a way to do this using the WSDL2java generated
stub class?
Thanks for any ideas.
- Steve Peterson
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
---------------------------------
Never Miss an Email
Stay connected with Yahoo! Mail on your mobile. Get started!