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

Format d'échange (XML, JSON...) Java Discussion :

Element vide avec DOM [DOM]


Sujet :

Format d'échange (XML, JSON...) Java

  1. #1
    Membre du Club
    Inscrit en
    Avril 2008
    Messages
    48
    Détails du profil
    Informations forums :
    Inscription : Avril 2008
    Messages : 48
    Points : 46
    Points
    46
    Par défaut Element vide avec DOM
    Salut,
    comment peut-on créer un element vide dans un Document en utilisant DOM,

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Element element = monDoc.createElement("monelement")
    me donne juste <monelement></monelement>je voudrais insérer un element vide : <exemple/>

  2. #2
    Expert éminent sénior
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 482
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : Belgique

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

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 482
    Points : 48 804
    Points
    48 804
    Par défaut
    D'un point de vue xml, c'est strictement la même chose. <element></element> EST un élément vide. C'est ton implémentation utilisée pour faire l'écriture qui choisi cette forme plutot qu'une autre. Elle a toute liberté de le faire, comme elle a la liberté de faire de l'indentation ou pas, d'utiliser des entité nommées (ex &lt plutot que des entités numérique (&#.... etc.

    Si tu nous disais qu'est-ce que tu utilise pour faire ton output, ont pourrais peut-être t'orienter vers la bonne config

  3. #3
    Membre du Club
    Inscrit en
    Avril 2008
    Messages
    48
    Détails du profil
    Informations forums :
    Inscription : Avril 2008
    Messages : 48
    Points : 46
    Points
    46
    Par défaut Element vide avec DOM
    Salut,

    ce n'est pas résolu.

    mon output est un fichier xml, je veux écrire cette balise <element/> et pas <element></element>

  4. #4
    Expert éminent sénior
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 482
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : Belgique

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

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 482
    Points : 48 804
    Points
    48 804
    Par défaut
    Citation Envoyé par tchize_ Voir le message
    Si tu nous disais qu'est-ce que tu utilise pour faire ton output, ont pourrais peut-être t'orienter vers la bonne config

  5. #5
    Membre du Club
    Inscrit en
    Avril 2008
    Messages
    48
    Détails du profil
    Informations forums :
    Inscription : Avril 2008
    Messages : 48
    Points : 46
    Points
    46
    Par défaut Element vide avec DOM
    Bon j'ai extrait le code de mes methodes , j'espere qu'il est lisible,
    j'attends vos reponses.

    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
    DocumentBuilder docBuilder = null;
     
    		try {
    			docBuilder = DocumentBuilderFactory.newInstance().newDocumentBuilder();
    		} catch(ParserConfigurationException e) {
    			System.err.println("Impossible de cr�er un DocumentBuilder.");
    			System.exit(1);
    		}
     
    		Document doc = docBuilder.newDocument();
                    //creation des elements
     
    		Source source = new DOMSource(doc);
    		Result resultat = new StreamResult(new File("test.xml"));
     
    		// création du transformateur XML
    		Transformer transfo = null;
    		try {
    			transfo = TransformerFactory.newInstance().newTransformer();
    		} catch(TransformerConfigurationException e) {
    			System.err.println("Impossible de créer un transformateur XML.");
    			System.exit(1);
    		}
    		transfo.setOutputProperty(OutputKeys.METHOD, "xml");
    		transfo.setOutputProperty(OutputKeys.OMIT_XML_DECLARATION, "no");
    		transfo.setOutputProperty(OutputKeys.ENCODING, "utf-8");
    		transfo.setOutputProperty(OutputKeys.INDENT, "yes");
     
    		try {
    			transfo.transform(source, resultat);
    		} catch(TransformerException e) {
    			System.err.println("La transformation a échoué : " + e);
    			System.exit(1);
    		}

  6. #6
    Expert éminent sénior
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 482
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : Belgique

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

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 482
    Points : 48 804
    Points
    48 804
    Par défaut
    Quelle implémentation dut transformer utilise tu? Ici, j'utilise xalan, et je n'ai pas ce phénomène:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
             TransformerFactory tFactory = TransformerFactory.newInstance();
             Transformer transformer = tFactory.newTransformer();
             transformer.setOutputProperty("indent", "yes");
             transformer.setOutputProperty("{http://xml.apache.org/xslt}indent-amount", "4");
             transformer.setOutputProperty("encoding", settings.getEncoding());

  7. #7
    Membre du Club
    Inscrit en
    Avril 2008
    Messages
    48
    Détails du profil
    Informations forums :
    Inscription : Avril 2008
    Messages : 48
    Points : 46
    Points
    46
    Par défaut Element vide avec DOM
    Salut,

    problème resolu.

    DOM par defaut, si j'ajoute à l'arbre un element n'ayant aucun contenu il l'ajoute sur cette format <element/> : balise vide ce qui répond à mes besoin.

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

Discussions similaires

  1. recuperer un element avec dom
    Par ericdeschamps dans le forum XML/XSL et SOAP
    Réponses: 8
    Dernier message: 20/09/2011, 09h40
  2. Vecteur avec element vide, fait planter l'execution
    Par neismarspra dans le forum C++
    Réponses: 14
    Dernier message: 06/12/2008, 10h00
  3. balise vide avec dom xml
    Par newcodeur dans le forum Macros et VBA Excel
    Réponses: 7
    Dernier message: 04/08/2008, 16h59
  4. [DOM] Accès au contenu textuel d'un noeud avec DOM
    Par comexe2 dans le forum Format d'échange (XML, JSON...)
    Réponses: 2
    Dernier message: 16/07/2004, 15h41
  5. [DOM] Comment lire de l'HTML avec DOM ?
    Par djodjo dans le forum Format d'échange (XML, JSON...)
    Réponses: 2
    Dernier message: 20/04/2004, 15h37

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