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 :

Caractères spéciaux dans les tags XML : soucis sur les getters


Sujet :

Services Web Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    8
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 8
    Par défaut Caractères spéciaux dans les tags XML : soucis sur les getters
    Bonjour à tous,

    Je viens poser un petit soucis ou je ne vois comment le détourner en fait ?
    et si on trouve ça servira à plein de monde je pense j'ai pas trouvé réponse sur le web en fait.

    Je fais actuellement un web service en REST, tout marche très bien sauf sur un point précis.

    Je dois générer un fichier xml jusque ici tout allez bien l’introspection de mon code me faisait bien mes tags etc... mais le fichier que je dois sortir possède des balise à la c.. genre <organisme-formateur>
    et là soucis car je ne peux pas faire des méthodes getOrganisme-formateur le caractère - me l'empèche logique mais c'est pas moi qui ai choisis la config de ce fichier xml je précise , donc je suis bien ennuyé pour récapituler j'ai :
    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
    43
    44
    45
    46
    47
     
    @Path("/offres/{idOffres}")
    @Produces({"application/xml"})
    public class Rest {
     
        @GET
        public Lheo getOffres(@PathParam("idOffres") String id) {
            Lheo lheo = new Lheo();
            if (Integer.parseInt(id) == 1) {
                /*Pour les tests de collections et ca marche*/
                // Periodes
                Session_Periode sessionPeriode1 = new Session_Periode();
                sessionPeriode1.setDebut("debutPeriode1");
                sessionPeriode1.setFin("finPeriode1");
     
                Session_Periode sessionPeriode2 = new Session_Periode();
                sessionPeriode2.setDebut("debutPeriode_2");
                sessionPeriode2.setFin("finPeriode_2");
     
     
                // Sessions
                Session session1 = new Session();
                session1.setPeriode(sessionPeriode1);
     
                Session session2 = new Session();
                session2.setPeriode(sessionPeriode2);
     
     
                // La collection pou tests d'introspection
                Collection<Session> collectionDeSession = new ArrayList<Session>();
                collectionDeSession.add(session1);
                collectionDeSession.add(session2);
     
     
                // remplir l'objet
                lheo.setIdAide(10);
     
                lheo.setCONTENU("Turlutu chapeau pointu !");
     
                lheo.setSession(collectionDeSession);
            }
     
     
     
            return lheo;
        }
    }
    Sur la partie objet utilisé comme root Element

    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
     
    @XmlRootElement
    public class Lheo {
        private int idOffres;
        private String CONTENU;
        private Collection<Session> session;
     
        public Collection<Session> getSession() {
            return session;
        }
     
        public void setSession(Collection<Session> session) {
            this.session = session;
        }
     
        public String getCONTENU() {
     
            return CONTENU;
        }
     
        public void setCONTENU(String CONTENU) {
            this.CONTENU = CONTENU;
        }
     
     
        public int getIdOffres() {
            return idOffres;
        }
     
        public void setIdOffres(int idOffres) {
            this.idOffres = idOffres;
        }
     
    }

    Je vous passe la config web xml tout le monde s'en moque

    Mon soucis c'est que je vais devoir changer CONTENU par CONTENU-organisme par exemple et là normal on déclare pas des variables comme ça avec des opérateurs donc je peux pas faire.
    Ma piste serait la suivant dire à mes getters qu'il me renvoie autre chose correspondant à ce que attends le moteur jersey mais je vois pas comment faire ?

    sinon c'est vraiment agréable ça me génère le flux dynamiquement ce qui fait que après mes données venant d'une BDD ce sera super tranquille (il me restera à trouver comment mettre des attributs si c possible.

    Merci de votre lecture

    Cordialement,

    Hervé

  2. #2
    Membre régulier
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    8
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 8
    Par défaut
    Citation Envoyé par schtroumpfNormand Voir le message
    Je viens poser un petit soucis ou je ne vois comment le détourner en fait ?
    et si on trouve ça servira à plein de monde je pense j'ai pas trouvé réponse sur le web en fait.
    Re coucou tout le monde, après une mauvaise nuit je reviens vers vous pour un petit coup de main j'ai toujours pas trouvé comment me sortir de ce trou
    Si par chance un contributeur aurait connaissance de ce soucis et une réponse à y apporter je lui serais très reconnaissant car là je pédale sans trouver comment m'en sortir.
    Je ne vois pas en fait comment je pourrais dans mes getters renvoyé ce qu'attends Jersey pour qu'il me fabrique un tag sur mesure sans prendre le nom de ma méthode comme non de tag et j'ai pas trouvé comment coller des attributs aussi sinon tout va bien

    Merci du temps que vous consacrerez à mon post et si vous ne comprenez pas ma demande n'hésites pas à me le signalez je posterais plein de trucs si ça peut aider.

    Cordialement,

    Hervé (au bord du désespoir la nuit n'a rien changé après multiples recherches à mon soucis )

  3. #3
    Membre régulier
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    8
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 8
    Par défaut Reponse partielle pour ceux que ca intéresse
    Re tout le monde je continus dans les bonnes pratiques je fais retour d'expérience :
    Donc pour ce qui est du retour lors de l’introspection des class
    Voici tout bêtement ce qu'il faut faire utiliser toute la partie lié aux annotations sujet très vaste :
    Dans ma méthode :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    // Voici ce que je veux comme nom de tag
    @XmlElement(name="contenu-organisme")
        public String getCONTENU() {
    // Cependant retour du contenu de la variable membre comme contenu de text Node
            return CONTENU;
        }
    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
     
    Résultat
    <lheo>
    <contenu-organisme>Turlutu chapeau pointu !</contenu-organisme>
    <idOffres>10</idOffres>
    <session>
    <periode>
    <debut>debutPeriode1</debut>
    <fin>finPeriode1</fin>
    </periode>
    </session>
    <session>
    <periode>
    <debut>debutPeriode_2</debut>
    <fin>finPeriode_2</fin>
    </periode>
    </session>
    </lheo>
    Reste a trouver comment mettre des attributs mais la musique doit être la même je passerai en résolu dès que j'aurais trouvé et je vous donnerais la réponse.
    Cordialement,

    Hervé

  4. #4
    Membre régulier
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    8
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 8
    Par défaut ok pour les attributs et le reste résolu
    Re retour résolu
    Donc je passe en résolu et je vous mets en fait le résultat de mes recherches comme toute bonne pratique... :
    En fait tout est basé sur le fait que je ne savais pas ou chercher l'info.
    tout est basé sur les annotations tout simplement.
    donc dans mes classes de test voici les rajouts pour exemple d'attributs.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
     
        @XmlAttribute(name = "testAttributeValue")
        public String getAttribute(){
            return this.CONTENU+"_"+this.idOffres;
        }
    Résultat du rendu :
    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
     
    <lheo testAttributeValue="Turlutu chapeau pointu 2******* ! ******* _12">
    <contenu-organisme>Turlutu chapeau pointu 2******* ! ******* </contenu-organisme>
    <idOffres>12</idOffres>
    <session>
    <periode>
    <debut>debutPeriode3</debut>
    <fin>finPeriode3</fin></periode>
    </session>
    <session>
    <periode>
    <debut>
    <debutPeriode_4</debut>
    <fin>finPeriode_4</fin>
    </periode>
    </session>
    </lheo>
    Voila je mets en résolu deux liens utile au passage :
    http://download.oracle.com/javase/6/...mlElement.html
    et :
    Cours et tutoriels pour bien apprendre la programmation Java : http://java.developpez.com/cours/

    Cordialement,

    Ps : Ce ne sont que des tests cela va de soi qu'il faudra plutot faire des constantes pour les attributs des choses dans le genre etc....

    Hervé

  5. #5
    Membre habitué
    Homme Profil pro
    Intégrateur Web
    Inscrit en
    Mars 2002
    Messages
    9
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Intégrateur Web

    Informations forums :
    Inscription : Mars 2002
    Messages : 9
    Par défaut
    Merci pour le retour d'XP

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

Discussions similaires

  1. Remplacer les caractères spéciaux dans xml
    Par panda31 dans le forum Développement de jobs
    Réponses: 14
    Dernier message: 19/10/2011, 09h53
  2. Réponses: 12
    Dernier message: 31/03/2006, 20h02
  3. CSS : Bordure sur les liens mais pas sur les images ?
    Par monstroplante dans le forum Mise en page CSS
    Réponses: 1
    Dernier message: 04/02/2006, 14h18
  4. [CSS] border-collapse sur les TR mais pas sur les TD.
    Par hpfx dans le forum Mise en page CSS
    Réponses: 6
    Dernier message: 03/04/2005, 16h16

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