IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Services Web Java Discussion :

Erreur : No deserializer for {http://www.w3.org/2001/XMLSchema}anyType


Sujet :

Services Web Java

  1. #1
    Membre du Club Avatar de Ashen-Shugar
    Homme Profil pro
    Inscrit en
    Juin 2004
    Messages
    67
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Juin 2004
    Messages : 67
    Points : 44
    Points
    44
    Par défaut Erreur : No deserializer for {http://www.w3.org/2001/XMLSchema}anyType
    Bonjour

    Nous avons une application qui se connecte depuis quelques années en en tant que client à plusieurs WebServices.

    Nous utilisons Axis 1.4 pour générer et utiliser le client. Nous ne souhaitons pas dans l'immédiat faire évoluer notre application avec un autre framework pour les WebServices; cela impliquerait beaucoup de correction de code et de test.

    Récemment un des WebServices que nous interrogeons a évolué. J'arrive toujours à recompiler sans probème le client java avec un script ANT mais pour certaines fonctions de ce webservice nous avons cette erreur à l'exécution :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    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: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)
    En faisant des tests avec SOAPUI, j'ai remarqué ( je ne sais pas si cela à un rapport) que les fonctions qui font cette erreur retournent des listes de valeurs.

    J'ai regardé la différence du retour SOAP XML avant et après la modifications du WS et j'ai constaté que le format de retour des listes est différent.

    AVANT:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    <SOAP-ENV:Envelope SOAP-ENV:........>
       <SOAP-ENV:Body>
          <ns4:getRefReviewResponse>
             <arrayOfReviewId xsi:type="SOAP-ENC:Array" SOAP-ENC:arrayType="xsd:int[31]" SOAP-ENC:offset="[0]">
                <item xsi:type="xsd:int">15221</item>
                <item xsi:type="xsd:int">24001</item>
                <item xsi:type="xsd:int">58914</item>
                <item xsi:type="xsd:int">59093</item>
                <item xsi:type="xsd:int">59302</item>
                <item xsi:type="xsd:int">59713</item>
    ....
    APRES:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    <SOAP-ENV:Envelope xmlns:.........>
       <SOAP-ENV:Body>
          <ns1:getRefReviewResponse>
             <getRefReviewResult>
                <xsd:int>1</xsd:int>
                <xsd:int>2</xsd:int>
                <xsd:int>40576</xsd:int>
     
    ....
    Si quelqu'un à une idée pour corriger mon erreur n'hésitez pas.

    J'aimerais si possible ne pas toucher le code du client généré automatiquement par wsdl2java.

    @+

    Eric

  2. #2
    Membre du Club Avatar de Ashen-Shugar
    Homme Profil pro
    Inscrit en
    Juin 2004
    Messages
    67
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Juin 2004
    Messages : 67
    Points : 44
    Points
    44
    Par défaut
    Bonsoir

    Si quelqu'un a une réponse ou une piste sur l'origine ou la correction de cette erreur n'hésitez pas.

    @+

    Eric

  3. #3
    Membre averti Avatar de rockley
    Homme Profil pro
    Inscrit en
    Décembre 2010
    Messages
    404
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Décembre 2010
    Messages : 404
    Points : 346
    Points
    346
    Par défaut
    Salut

    Le WS que tu veux contacté est mal foutu surement.
    Normalement la deserialisation se fait au niveau du WS, mais tu peux le faire côté client aussi (apparemment).

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    SOAPMappingRegistry smr = new SOAPMappingRegistry();
    StringDeserializer sd = new StringDeserializer ();
    smr.mapTypes (Constants.NS_URI_SOAP_ENC, new QName ("", "return"), null, null, sd);
    call.setSOAPMappingRegistry(smr);
    T'en a plus là :
    http://www.coderanch.com/t/220268/We...nd-deserialize

  4. #4
    Membre du Club Avatar de Ashen-Shugar
    Homme Profil pro
    Inscrit en
    Juin 2004
    Messages
    67
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Juin 2004
    Messages : 67
    Points : 44
    Points
    44
    Par défaut
    Bonsoir

    Merci pour l'info, je suis surbooké mais je vais essayer de tester demain.

    Je dirais ce que ça donne si j'arrive à le mettre en place.

    En tout cas merci pour la piste....

    @+

    Eric

Discussions similaires

  1. Spring - Erreur 404 avec http://www.springsource.org/tags/form
    Par dark0502 dans le forum Frameworks Web
    Réponses: 0
    Dernier message: 09/12/2013, 18h29
  2. Réponses: 1
    Dernier message: 07/10/2013, 10h59
  3. Réponses: 18
    Dernier message: 15/06/2012, 11h29
  4. [JDOM] SAXBuilder error 504 for URL: http://www.w3.org/TR/xhtml1/DTD/xhtml-symbol.ent
    Par Pedro4 dans le forum Format d'échange (XML, JSON...)
    Réponses: 1
    Dernier message: 29/07/2008, 15h49

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo