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

XML/XSL et SOAP Discussion :

Output d'un fichier XML


Sujet :

XML/XSL et SOAP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Février 2006
    Messages
    34
    Détails du profil
    Informations forums :
    Inscription : Février 2006
    Messages : 34
    Par défaut Output d'un fichier XML
    Bonjour;
    J'ai actuellement le fichier orm.xml suivant:
    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
    48
    49
    50
    51
    52
    53
     
    <?xml-stylesheet type="text/xsl" href="transform.xsl"?>
    <?xml version="1.0" encoding="ASCII"?>
    <orm:entity-mappings xmlns:orm="http://java.sun.com/xml/ns/persistence/orm" version="2.0">
      <orm:access>FIELD</orm:access>
      <orm:entity class="org.eclipse.emf.texo.test.model.samples.library.Book" name="Book">
        <orm:attributes>
          <orm:basic name="title" optional="true"/>
          <orm:basic name="pages" optional="true"/>
          <orm:basic name="category" optional="true"/>
          <orm:many-to-one name="author" optional="false" target-entity="org.eclipse.emf.texo.test.model.samples.library.Writer">
            <orm:cascade>
              <orm:cascade-persist/>
              <orm:cascade-merge/>
              <orm:cascade-refresh/>
            </orm:cascade>
          </orm:many-to-one>
        </orm:attributes>
      </orm:entity>
      <orm:entity class="org.eclipse.emf.texo.test.model.samples.library.Writer" name="Writer">
        <orm:attributes>
          <orm:basic name="name" optional="true"/>
          <orm:one-to-many name="books" target-entity="org.eclipse.emf.texo.test.model.samples.library.Book">
            <orm:order-column/>
            <orm:join-table name="Writer_books"/>
            <orm:cascade>
              <orm:cascade-persist/>
              <orm:cascade-merge/>
              <orm:cascade-refresh/>
            </orm:cascade>
          </orm:one-to-many>
        </orm:attributes>
      </orm:entity>
      <orm:entity class="org.eclipse.emf.texo.test.model.samples.library.Library" name="Library">
        <orm:attributes>
          <orm:basic name="name" optional="true"/>
          <orm:one-to-many name="writers" target-entity="org.eclipse.emf.texo.test.model.samples.library.Writer">
            <orm:order-column/>
            <orm:join-column/>
            <orm:cascade>
              <orm:cascade-all/>
            </orm:cascade>
          </orm:one-to-many>
          <orm:one-to-many name="books" target-entity="org.eclipse.emf.texo.test.model.samples.library.Book">
            <orm:order-column/>
            <orm:join-column/>
            <orm:cascade>
              <orm:cascade-all/>
            </orm:cascade>
          </orm:one-to-many>
        </orm:attributes>
      </orm:entity>
    </orm:entity-mappings>
    Ce fichier a été Parsé avec une classe java utilisant Jaxen qui est représenté comme suite:
    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
    public class Parseur {
     
     
        public static void Parsor() throws Exception {
     
     
    			SAXBuilder sxb=new SAXBuilder();
    			Document document=sxb.build(new File(orm.xml));
    			//Element entity=document.getRootElement();
     
    			final Namespace ORM_NS = Namespace.getNamespace("orm", "http://java.sun.com/xml/ns/persistence/orm");
     
    			XPath entitiesPath = XPath.newInstance("/orm:entity-mappings/orm:entity");
    			entitiesPath.addNamespace(ORM_NS);
    			XPath attribsPath = XPath.newInstance("orm:attributes/orm:basic");
    			attribsPath.addNamespace(ORM_NS);
     
    			List<Element> entities = entitiesPath.selectNodes(document);
    			for(Element entity : entities) {
     
     
    				System.out.println(entity.getAttributeValue("name"));
     
    				List<Element> attribs = attribsPath.selectNodes(entity);
    				for(Element attrib : attribs) {
     
                                        System.out.println(attrib.getAttributeValue("name"));
    				}
     
     
     
     
    			}
        }
     
    }
    Ce que je souhaite faire c'est de trouver une solution dans mon code java afin de pouvoir rediriger la sortie de résultat du parse obtenu vers un fichier xml .

    Merci d'avance pour votre aide.

  2. #2
    Modérateur

    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    12 585
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 12 585
    Par défaut
    XMLOutputter
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  3. #3
    Membre averti
    Inscrit en
    Février 2006
    Messages
    34
    Détails du profil
    Informations forums :
    Inscription : Février 2006
    Messages : 34
    Par défaut
    Slt;
    J'ai ajouté une fonction XMLOutputter mais toujours pas de fichier crée.

    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
        public static void Parsor(String path1) throws Exception {
    int nbr_class=-1;
    int i;
    StreamResult dest1;
    			SAXBuilder sxb=new SAXBuilder();
    			Document document=sxb.build(new File(path1));
    			//Element entity=document.getRootElement();
     
    			final Namespace ORM_NS = Namespace.getNamespace("orm", "http://java.sun.com/xml/ns/persistence/orm");
     
    			XPath entitiesPath = XPath.newInstance("/orm:entity-mappings/orm:entity");
    			entitiesPath.addNamespace(ORM_NS);
    			XPath attribsPath = XPath.newInstance("orm:attributes/orm:basic");
    			attribsPath.addNamespace(ORM_NS);
     
    			List<Element> entities = entitiesPath.selectNodes(document);
    			for(Element entity : entities) {
                             nbr_class ++;
                                    System.out.println("<classe name"+entity.getAttributeValue("name")+">\n");
                                    for (i=0;i<=nbr_class;i++){
                                    name_cl=entity.getAttributeValue("name");
     
                                    }
                                    tabname[i]=name_cl;
     
                                    pag=pag+"<class>"+entity.getAttributeValue("name")+"type="+"String"+"\n";
    				List<Element> attribs = attribsPath.selectNodes(entity);
    				for(Element attrib : attribs) {
     
                                        pag=pag+"<attribut>"+attrib.getAttributeValue("name")+"</attribut>\n";
    					System.out.println("<attribut>"+attrib.getAttributeValue("name")+"</attribut>");
    				}
                                   pag=pag+ "</class> \n";
     
     
                XMLOutputter outputter = new XMLOutputter();     
                outputter.setFormat(Format.getPrettyFormat());
     
     
     
    			}
        }

  4. #4
    Modérateur

    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    12 585
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 12 585
    Par défaut
    Oui, XMLOutputter n'est pas encore capable de lire les pensées du programmeur qui l'appelle pour détecter automatiquement qu'est-ce qu'il doit output.

    Peut-être dans la prochaine version ?
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  5. #5
    Membre averti
    Inscrit en
    Février 2006
    Messages
    34
    Détails du profil
    Informations forums :
    Inscription : Février 2006
    Messages : 34
    Par défaut
    Désolé mais j'ai essayé avec plusieurs exemple de cette méthode mais toujours pas de résultat, si vous voulez bien s'il vous plait me guider encore pour réaliser ce que je souhaite.

  6. #6
    Modérateur

    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    12 585
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 12 585
    Par défaut
    Par exemple

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    OutputStream out = null;
    try {
      out = new FileOutputStream("monFichier.xml");
      outputter.output(document, out);
    } finally {
      out.close();  
    }
    Étant donné l'existence de XMLOutputter.output(Document, OutputStream) ça me paraît évident.
    Il y avait aussi XMLOutputter.output(Document, Writer) si tu préférais.
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

Discussions similaires

  1. [XSLT] Output d'un fichier XML
    Par yous_han dans le forum Format d'échange (XML, JSON...)
    Réponses: 8
    Dernier message: 02/05/2011, 02h49
  2. [XSLT 1.0] Output d'un fichier XML
    Par miled dans le forum XSL/XSLT/XPATH
    Réponses: 0
    Dernier message: 30/04/2011, 05h38
  3. problème avec output fichier XML
    Par soumti84 dans le forum Format d'échange (XML, JSON...)
    Réponses: 1
    Dernier message: 19/04/2009, 19h13
  4. [XSLT] output dans un fichier xml
    Par bobkorn dans le forum Format d'échange (XML, JSON...)
    Réponses: 9
    Dernier message: 11/04/2008, 18h40
  5. Balises HTML dans un fichier XML
    Par Bastet79 dans le forum XML/XSL et SOAP
    Réponses: 12
    Dernier message: 04/09/2002, 16h29

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