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 :

Web Service Rest et jersey


Sujet :

Services Web Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2012
    Messages
    277
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pas de Calais (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2012
    Messages : 277
    Par défaut Web Service Rest et jersey
    Bonjour,

    Je cherche à passer un objet en paramètre de mon WebService, Cependant je prends un message qui me parait logique comme quoi les paramètres ne doivent qu'être que des Strings.
    Voici mon bout de code concerné :

    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
     
    @GET
    	@Path("/{smtp}:{port}/{userServMail}/{passwordServMail}")
    	public Response getMsg(@PathParam("smtp") String smtp, @PathParam("userServMail") String idServMail,
    			@PathParam("password") String passwordServMail, @PathParam("port") String portServMail,
    			@PathParam("mailMessage") MailMessage mailMessage) {
     
    		MailSender mailSender = new MailSender(smtp, idServMail, passwordServMail);
    		try {
    			mailSender.sendMessage(mailMessage, smtp, idServMail, passwordServMail, portServMail);
    		} catch (MessagingException e) {
    			// TODO Auto-generated catch block
    			e.printStackTrace();
    		}
    		// String output = "Jersey repond ia OBJIS : " + msg;
    		String output = "host " + smtp + " port " + portServMail;
    		return Response.status(200).entity(output).build();
    	}
    Le message d'erreur est pour le paramètre "mailMessage" :
    SR-311, 3.2: The class fr.toto.ressources.MailMessage should have a constructor that accepts a single java.lang.String argument, or have a static method named valueOf that accepts a single java.lang.String argument.

    Donc en fait mon but est de passer carrément mon objet MailMessage en paramètre.
    • Est ce possible ?
    • Si oui comment ?


    D'avance merci.

  2. #2
    Membre Expert
    Avatar de eulbobo
    Homme Profil pro
    Développeur Java
    Inscrit en
    Novembre 2003
    Messages
    786
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Novembre 2003
    Messages : 786
    Par défaut
    Si tu utilises PathParam, tu indiques que ta variable "mailMessage" sera présent dans le path... Or il n'est pas déclaré (donc tu auras du mal, sauf si tu l'as déclaré au niveau de la classe)

    Ensuite, le système essaye de faire ce qu'il peut avec ce que tu lui donne : dans un @PATH, tu ne pourras jamais avoir QUE des paramètres de type String. Du coup le système essaye d'instancier un objet MailMessage avec un constructeur String (ton erreur : ça n'existe pas).

    Donc pour résoudre ton problème, ajoute un constructeur qui prend un String en paramètre dans ta classe MailMessage.
    Mais avec uniquement ce bout de code, je prédis qu'il sera vide : il faut prévoir de charger ta variable mailMessage (avec un @QueryParam par exemple, ou @FormParam si tu utilises un @POST)

Discussions similaires

  1. Décrire et Consommer un Web Service ReST
    Par knebhi dans le forum REST
    Réponses: 8
    Dernier message: 28/10/2012, 15h10
  2. web services REST
    Par mafanta dans le forum Services Web
    Réponses: 1
    Dernier message: 08/02/2011, 08h44
  3. web service restful
    Par linda2010 dans le forum Services Web
    Réponses: 0
    Dernier message: 07/03/2010, 23h51
  4. Web service REST
    Par Lexandre dans le forum Développement de jobs
    Réponses: 0
    Dernier message: 27/01/2010, 10h31
  5. Problème FLEX Web Service REST
    Par Florian_44 dans le forum Flex
    Réponses: 1
    Dernier message: 25/06/2009, 00h58

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