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 Discussion :

Web Service + Proxy = 2 différents objets


Sujet :

Services Web

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Février 2007
    Messages
    21
    Détails du profil
    Informations forums :
    Inscription : Février 2007
    Messages : 21
    Par défaut Web Service + Proxy = 2 différents objets
    Bonjour à vous tous,

    Je débuter avec les Services Webs. J'ai fais plusieurs tests avec des données simples et des objets simples. J'entends pas simple par de tableau, pas de liste, juste des données brutes.

    Je réussi a bien avoir mes données lorsque je le test dans le navigateur web, cependant, dans mon code, il arrive que l'objet de retour du service web n'est pas du même namespace que l'original. En regardant dans le code généré du Proxy, je me rends compte qu'il a fait une copie de mes classes et qu'il retourne cet objet au lieu de l'orginal. Quoi faire?

    Merci

  2. #2
    Expert confirmé
    Avatar de Skyounet
    Homme Profil pro
    Software Engineer
    Inscrit en
    Mars 2005
    Messages
    6 380
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : Etats-Unis

    Informations professionnelles :
    Activité : Software Engineer
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2005
    Messages : 6 380
    Par défaut
    Il est tout à fait normal que ce soit une copie de la classe.

    Dans ton webservice tu mets juste à disposition la structure de ta classe, lorsque tu crées ta classe proxy, wsdl.exe te crée une classe avec le même nom, et les mêmes membres/propriétés.

    C'est tout.

  3. #3
    Membre averti
    Inscrit en
    Février 2007
    Messages
    21
    Détails du profil
    Informations forums :
    Inscription : Février 2007
    Messages : 21
    Par défaut
    Citation Envoyé par Skyrunner Voir le message
    Il est tout à fait normal que ce soit une copie de la classe.

    Dans ton webservice tu mets juste à disposition la structure de ta classe, lorsque tu crées ta classe proxy, wsdl.exe te crée une classe avec le même nom, et les mêmes membres/propriétés.

    C'est tout.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    Stub.StubObjectWithListObjectNotSerialized stub;
                WebServiceReference.ServiceFacade wsFacade = new NunitTest.WebServiceReference.ServiceFacade();
                stub = wsFacade.getComplexObject();
    Pourquoi est ce que alors tout crash à la ligne stub = wsFacade.getComplexObject();

    Je ne vois pas le but de faire une copie lorsque lorsque je consomme le service je ne peux pas récupérer l'objet car il est rendu un autre objet... je veux le même objet.

  4. #4
    Expert confirmé
    Avatar de Skyounet
    Homme Profil pro
    Software Engineer
    Inscrit en
    Mars 2005
    Messages
    6 380
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : Etats-Unis

    Informations professionnelles :
    Activité : Software Engineer
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2005
    Messages : 6 380
    Par défaut
    Je ne comprends pas ce que tu essais de faire.

    Comment veux tu que la WebMethod getComplexObject() connaisse la classe StubObjectWithListObjectNotSerialized ?

    Le code de la classe est aussi présent sur le serveur (là où se trouve le WS quoi).

    Le classe est sérializable ?

    D'ailleurs tu dis que ça crash, quelle est l'erreur ?

  5. #5
    Membre averti
    Inscrit en
    Février 2007
    Messages
    21
    Détails du profil
    Informations forums :
    Inscription : Février 2007
    Messages : 21
    Par défaut
    Citation Envoyé par Skyrunner Voir le message
    Je ne comprends pas ce que tu essais de faire.

    Comment veux tu que la WebMethod getComplexObject() connaisse la classe StubObjectWithListObjectNotSerialized ?

    Le code de la classe est aussi présent sur le serveur (là où se trouve le WS quoi).

    Le classe est sérializable ?

    D'ailleurs tu dis que ça crash, quelle est l'erreur ?
    J'ai mon DLL (namespace) côté serveur et côté client.

    Ce que je veux faire c'est que mon client appelle mon serveur (web service). Le webservice va à la DB fait les calculs et le tralala du côté serveur. Lorsque mon objet est prêt il renvoie mon objet tout rempli et je l'utilise côté client.

    Client--call-->webservice--return-->Client

    Je ne comprends pas pourquoi le Proxy me crée un objet car lorsque je retourne vers le client bien rien n'est compatible. L'erreur est que ce n'est pas le bon objet tout simplement. J'essaye de le Caster et ca ne marche pas.

  6. #6
    Expert confirmé
    Avatar de Skyounet
    Homme Profil pro
    Software Engineer
    Inscrit en
    Mars 2005
    Messages
    6 380
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : Etats-Unis

    Informations professionnelles :
    Activité : Software Engineer
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2005
    Messages : 6 380
    Par défaut
    Je n'ai jamais été confronté à cette situation.

    Mais comment veux tu que le serveur sache que le client connaisse le code de la classe.
    Il ne sait pas, donc il fout la structure dans ta classe proxy.

    Récupère un objet du type qui est dans la classe proxy et après copie tous les champs 1 à 1.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Web service WCF, renvoyer un objet sans balise
    Par cladoo dans le forum Développement Web avec .NET
    Réponses: 1
    Dernier message: 05/01/2015, 17h53
  2. Web service proxy
    Par pandaren dans le forum Services Web
    Réponses: 1
    Dernier message: 20/07/2012, 17h18
  3. Réponses: 0
    Dernier message: 26/07/2011, 13h04
  4. Web service (type de retour:objet)
    Par roronnoa dans le forum Services Web
    Réponses: 5
    Dernier message: 08/09/2008, 09h33
  5. Web service, proxy et HTTPS
    Par eraim dans le forum Langage
    Réponses: 9
    Dernier message: 06/03/2007, 17h47

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