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
Partager