Axis et erreur "No deserializer defined for array type"
Bonjour,
J'ai créé un client de webservice avec Eclipse Galileo 3.5 JEE (New/Others/Web Services/Web Service client).
Il fonctionne et je peux l'utiliser pour appeler le webservice. Sauf que, dans ma collection de résultat, si une des propriétés d'un des objets est un tableau vide, je reçois cette erreur :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59
| 26 août 2009 14:42:06 org.apache.axis.utils.JavaUtils isAttachmentSupported
ATTENTION: Unable to find required classes (javax.activation.DataHandler and javax.mail.internet.MimeMultipart). Attachment support is disabled.
26 août 2009 14:42:07 org.apache.axis.client.Call invoke
GRAVE: Exception:
org.xml.sax.SAXException: No deserializer defined for array type {http://www.w3.org/2001/XMLSchema}ur-type
at org.apache.axis.encoding.ser.ArrayDeserializer.onStartElement(ArrayDeserializer.java:276)
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:236)
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)
at Magento.Mage_Api_Model_Server_HandlerBindingStub.call(Mage_Api_Model_Server_HandlerBindingStub.java:244)
at Magento.Test.main(Test.java:58)
; nested exception is:
org.xml.sax.SAXException: No deserializer defined for array type {http://www.w3.org/2001/XMLSchema}ur-type
AxisFault
faultCode: {http://schemas.xmlsoap.org/soap/envelope/}Server.userException
faultSubcode:
faultString: org.xml.sax.SAXException: No deserializer defined for array type {http://www.w3.org/2001/XMLSchema}ur-type
faultActor:
faultNode:
faultDetail:
{http://xml.apache.org/axis/}stackTrace:org.xml.sax.SAXException: No deserializer defined for array type {http://www.w3.org/2001/XMLSchema}ur-type
at org.apache.axis.encoding.ser.ArrayDeserializer.onStartElement(ArrayDeserializer.java:276)
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:236)
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)
at Magento.Mage_Api_Model_Server_HandlerBindingStub.call(Mage_Api_Model_Server_HandlerBindingStub.java:244)
at Magento.Test.main(Test.java:58)
{http://xml.apache.org/axis/}hostname:lrobert-desktop
org.xml.sax.SAXException: No deserializer defined for array type {http://www.w3.org/2001/XMLSchema}ur-type
at org.apache.axis.AxisFault.makeFault(AxisFault.java:101)
at org.apache.axis.client.Call.invoke(Call.java:2470)
at org.apache.axis.client.Call.invoke(Call.java:2366)
at org.apache.axis.client.Call.invoke(Call.java:1812)
at Magento.Mage_Api_Model_Server_HandlerBindingStub.call(Mage_Api_Model_Server_HandlerBindingStub.java:244)
at Magento.Test.main(Test.java:58)
Caused by: org.xml.sax.SAXException: No deserializer defined for array type {http://www.w3.org/2001/XMLSchema}ur-type
at org.apache.axis.encoding.ser.ArrayDeserializer.onStartElement(ArrayDeserializer.java:276)
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:236)
at org.apache.axis.message.RPCElement.getParams(RPCElement.java:384)
at org.apache.axis.client.Call.invoke(Call.java:2467)
... 4 more |
Pareil si le webservice retourne un tableau vide.
Que faire ?
Merci d'avance