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 :

Comment encapsuler la réponse ?


Sujet :

Services Web Java

  1. #1
    lr
    lr est déconnecté
    Membre régulier
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    338
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Octobre 2003
    Messages : 338
    Points : 114
    Points
    114
    Par défaut Comment encapsuler la réponse ?
    Salut,

    Je suis en train d'écrire un webservice en java. J'ai par exemple des méthodes getProduct( int productId ), getUser( String username ) etc.

    Je pensais encapsuler la réponse dans un objet tel que
    MyResponse
    ------------
    - int errCode
    - String errMessage
    - Object returnObject
    - Object[] returnObjects

    Comme ça, que la webméthode retourne une erreur, un objet ou un tableau d'objets, c'est ok.

    Lorsque j'ai voulu générer le webservice avec Eclipse, j'ai eu une erreur. Il me prévenait que ça ne respectait pas la norme et que ça pourrait ne pas marcher car MyResponse avait une propriété de type "Object" et que ça n'allait pas car il fallait un constructeur par défaut et public.

    J'ai donc créé un objet MyObject qui étend Object et définit un constructeur par défaut et public et je l'ai utilisé comme type pour mes champs "returnObject" et "returnObjects".

    Maintenant, on peut appeler mon webservice, il fait son traitement correctement, place un éventuel produit (qui étend MyObject) dans le champs "returnObject" mais la réponse reçue par le client n'est pas correcte : le champs "returnObject" est de type MyObject et il ne contient aucune propriété.

    Quelle est la bonne méthode pour faire ce que je souhaite ?

    Merci d'avance

  2. #2
    Membre actif
    Inscrit en
    Juin 2008
    Messages
    207
    Détails du profil
    Informations forums :
    Inscription : Juin 2008
    Messages : 207
    Points : 215
    Points
    215
    Par défaut
    Citation Envoyé par lr Voir le message
    Quelle est la bonne méthode pour faire ce que je souhaite ?
    Bonjour,

    Retourner un JavaBean avec les attributs dont tu as besoin me paraît être une bonne méthode.

  3. #3
    lr
    lr est déconnecté
    Membre régulier
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    338
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Octobre 2003
    Messages : 338
    Points : 114
    Points
    114
    Par défaut
    Citation Envoyé par Arnaud_03 Voir le message
    Bonjour,

    Retourner un JavaBean avec les attributs dont tu as besoin me paraît être une bonne méthode.
    Merci pour ta réponse.

    Donc qqch comme ça :
    MyResponse
    -----------
    - int errCode
    - String errMessage
    - Product product
    - Product[] products
    - User user
    - Users[] users
    - Invoice invoice
    - Invoice[] invoices
    etc.

    C'est ce que j'ai fais, ça fonctionne. J'aurai espéré qqch de plus "générique" mais je suppose que c'est propre comme ça également.

Discussions similaires

  1. Réponses: 2
    Dernier message: 18/02/2012, 17h56
  2. [Toutes versions] comment recevoir une réponse automatiquement?
    Par bionet dans le forum Outlook
    Réponses: 1
    Dernier message: 03/05/2011, 18h29
  3. Comment récupérer la réponse d'apache ?
    Par bigsister dans le forum Apache
    Réponses: 2
    Dernier message: 28/01/2011, 12h21
  4. Comment encapsulé l'explorateur Windows dans un Windows Form
    Par Flexinfo dans le forum Windows Forms
    Réponses: 2
    Dernier message: 09/06/2009, 18h04
  5. [AJAX] Comment gérer des réponses ajax simultanées ?!
    Par jahjah92 dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 14/09/2007, 21h48

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