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

C# Discussion :

Erreur sérialisation appel de web service


Sujet :

C#

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Juin 2010
    Messages
    14
    Détails du profil
    Informations forums :
    Inscription : Juin 2010
    Messages : 14
    Par défaut Erreur sérialisation appel de web service
    Bonjour,

    j'ai besoin de votre aide svp, dans le cadre de mon travail, je dois créer une dll qui permetrrait de récupérer les données d'un web service.

    j'ai ajouté la référence du web service dans mon projet librairie, en donnant l'adresse wsdl, le framwork m'a créé une classe reprenant les différentes fonction et procédure du web service. ensuite j'ai créé une instance de la classe de ma réfrence, jusqu'à là tout va bien.

    en appellant l'une des fonctions du web service, lors de l'execution j'ai l'erreur suivante "Erreur lors de la désérialisation du corps du message de réponse pour l'opération"

    je pense que cette erreur est liée au type de retour de la fonction.

    le type de retour est un type propre au web service serviceweb.Resultats, tel que Reultat est une classe avec plusieurs type de retour []string et [][] string, une sorte de structure.

    j'ai déclaré une variable de retour avec le type serviceweb.Resultats, mais cette erreur subsiste.

    j'espère que c'est assez claire, merci de m'aider

    baya

  2. #2
    Membre Expert
    Avatar de azstar
    Homme Profil pro
    Architecte Technique BizTalk/.NET
    Inscrit en
    Juillet 2008
    Messages
    1 198
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Architecte Technique BizTalk/.NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2008
    Messages : 1 198
    Par défaut
    vérifier si l'erreur (exception)est monté depuis le web service ?

  3. #3
    Membre averti
    Inscrit en
    Juin 2010
    Messages
    14
    Détails du profil
    Informations forums :
    Inscription : Juin 2010
    Messages : 14
    Par défaut
    Bonsoir azstar,

    je pense que l'exception est remontée par le framwork, mais je ne suis pas sûre, comment je peux vérifier ceci?

    Sinn pas d'idée, sur la façon dont je pourrai récupérer mes résultats (caster, régler les paramètres,......)

    merci

  4. #4
    Membre Expert
    Avatar de azstar
    Homme Profil pro
    Architecte Technique BizTalk/.NET
    Inscrit en
    Juillet 2008
    Messages
    1 198
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Architecte Technique BizTalk/.NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2008
    Messages : 1 198
    Par défaut
    Je pense c'est un probleme de sérialisation pour les informations envoyés par web service il faut utiliser des types sérialisables par exemple :éviter utilisation des dictionary hashtable....

  5. #5
    Membre averti
    Inscrit en
    Juin 2010
    Messages
    14
    Détails du profil
    Informations forums :
    Inscription : Juin 2010
    Messages : 14
    Par défaut
    Bonjour,

    j'ai essayé de sérialiser ou de dé sérialiser le résultat, rien n'y fait. je ne maitrise pas trop le thème, du coup je ne sais pas si je m'y prend bien.

    si quelqu'un peut m'aider ou me donner des idées je suis preuneuse.

    merci

  6. #6
    Inactif  
    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Janvier 2007
    Messages
    6 604
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 64
    Localisation : France

    Informations professionnelles :
    Activité : Chef de projet NTIC

    Informations forums :
    Inscription : Janvier 2007
    Messages : 6 604
    Par défaut
    Bonjour

    Merci de poster la signature des méthodes de ton web service pour qu'on ait une idée.

    Une piste : dans un web service, les tableaux multidimisensionnels (exemple : string [,])ne sont pas autorisés alors que les "jagged array" (tableaux de tableaux) le sont.(exemple : string [][]).

  7. #7
    Membre averti
    Inscrit en
    Juin 2010
    Messages
    14
    Détails du profil
    Informations forums :
    Inscription : Juin 2010
    Messages : 14
    Par défaut
    bonsoir Bluedeep,

    merci pour ta réponse, je commençais à perdre espoir.
    voici la signature de la fonction que je voudrais appeler :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    maReferenceWS.resultat sourceoWebService(string login, string table, string requete, string colonnes, string referenciel);
    sachant que resultat est le type renvoyée par la fonction :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    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
     
    public partial class resultat : object, System.ComponentModel.INotifyPropertyChanged {
     
            private string[] enteteField;
     
            private string[][] donneeField;
     
            private string erreurField;
     
            /// <remarks/>
            public string[] entete {
                get {
                    return this.enteteField;
                }
                set {
                    this.enteteField = value;
                    this.RaisePropertyChanged("entete");
                }
            }
     
            /// <remarks/>
            public string[][] donnee {
                get {
                    return this.donneeField;
                }
                set {
                    this.donneeField = value;
                    this.RaisePropertyChanged("donnee");
                }
            }
     
            /// <remarks/>
            public string erreur {
                get {
                    return this.erreurField;
                }
                set {
                    this.erreurField = value;
                    this.RaisePropertyChanged("erreur");
                }
            }
            ......
    même si j'instancie une variable au type resultat ça me renvoie comme même l’exception "Erreur lors de la désérialisation du corps du message de réponse pour l'opération"

    j’espère que c'est plus clair.

Discussions similaires

  1. Appeler un web service avec pl/sql
    Par squalito dans le forum PL/SQL
    Réponses: 5
    Dernier message: 17/09/2012, 15h21
  2. Erreur d'appel au Web Service
    Par Lolitaaa dans le forum Services Web
    Réponses: 16
    Dernier message: 20/03/2012, 16h13
  3. Erreur d'appel à un Web Service avec une authentification HTTP basic
    Par Lordsephiroth dans le forum Services Web
    Réponses: 3
    Dernier message: 28/09/2011, 16h53
  4. [wss3] Erreur 401 lors de l'appel du web service en c#
    Par nosdo dans le forum Développement Sharepoint
    Réponses: 10
    Dernier message: 06/07/2010, 15h09
  5. [Débutant] Appeler un Web Service
    Par slyer dans le forum Services Web
    Réponses: 2
    Dernier message: 17/02/2006, 18h15

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